ASSERT-KTH / repairbench-framework

Automatic Repair Framework with LLMs ❤️
https://repairbench.github.io/
12 stars 4 forks source link

add support for run-bug-run runbugrun #39

Open monperrus opened 1 year ago

monperrus commented 1 year ago

RunBugRun -- An Executable Dataset for Automated Program Repair https://github.com/giganticode/run_bug_run

andre15silva commented 1 year ago

https://github.com/giganticode/run_bug_run_data/releases/tag/v0.0.1

Seems like the first release is out

cadddr commented 1 month ago

happy to take on that

andre15silva commented 1 month ago

happy to take on that

sounds good, let me know if you have any question!

cadddr commented 1 month ago

happy to take on that

sounds good, let me know if you have any question!

I started looking into this yesterday. Few things about run bug run:

andre15silva commented 1 month ago

when implementing benchmark and bug subclasses for python bugs, I realized elle-elle-aime is hardwired for java, is it ok to carry on with python? I have not worked with run bug run - Java.

When you integrate the benchmark you define which commands to run when compiling/testing each bug/patch.

The only part that is currently hard-coded for Java is the extraction of single functions, removal of comments, etc. These are used when generating prompts.

See https://github.com/ASSERT-KTH/elle-elle-aime/tree/master/elleelleaime/core/utils/java

To integrate a Python benchmark you'll need to implement similar functions for Python (or even better, using tree-sitter to support more languages).

cadddr commented 1 month ago

Sharing progress so far: https://github.com/ASSERT-KTH/elle-elle-aime/pull/166/ (Please don't merge as it is still missing a few things.)

I'm a little unclear on the Bug.failing_tests -- it maps test methods to the resulting error message? In run bug run there are simply test inputs and expected outputs, and the buggy code is not always a self-contained function.

Also the ground_truth diff only comes into play when evaluating the LLM-generated fix? Why not simply check if tests pass.

Similarly, not sure if I'm using the checkout logic correctly -- seems like a drag to have to make a copy each time and I instead simply read from the original buggy file.

Any feedback/corrections welcome!

andre15silva commented 1 month ago

I'm a little unclear on the Bug.failing_tests -- it maps test methods to the resulting error message?

Exactly, it maps fully qualified test method names to the error messages.

In run bug run there are simply test inputs and expected outputs, and the buggy code is not always a self-contained function.

I see the solution you came up with, and that seems reasonable.

The only problem will be in extracting the test case (see https://github.com/ASSERT-KTH/elle-elle-aime/blob/master/elleelleaime/core/utils/java/java.py#L269). This means that we need to add a special case for RunBugRun here.

Also the ground_truth diff only comes into play when evaluating the LLM-generated fix?

The ground_truth diff is used in two places right now:

  1. In extracting the buggy function (see https://github.com/ASSERT-KTH/elle-elle-aime/blob/master/elleelleaime/core/utils/java/java.py#L143), during the generation of prompts
  2. In evaluating the generated fixed functions.

Why not simply check if tests pass.

Executing tests to check is great, but there is known problem in program repair called patch overfitting. This problem lies in patches that pass the tests but are different from what the developer intends (see e.g., Is the cure worse than the disease? overfitting in automated program repair.

For this reason, we use the ground-truth patch as a reference in some evaluation metrics like exact-match or ast-match.

Similarly, not sure if I'm using the checkout logic correctly -- seems like a drag to have to make a copy each time and I instead simply read from the original buggy file.

It's important to have that logic (every checkout copies the files from an untouched source) due to the parallelism. We want to be able to evaluate hundreds/thousands of patches at the same time, and this requires them to be in different locations.

Any feedback/corrections welcome!

Could you rebase your PR? I changed the CI config to enable it on PRs. That way we can check if the tests are green. Thanks :)

cadddr commented 3 weeks ago

The only problem will be in extracting the test case (see https://github.com/ASSERT-KTH/elle-elle-aime/blob/master/elleelleaime/core/utils/java/java.py#L269). This means that we need to add a special case for RunBugRun here.

The ground_truth diff is used in two places right now:

  1. In extracting the buggy function (see https://github.com/ASSERT-KTH/elle-elle-aime/blob/master/elleelleaime/core/utils/java/java.py#L143), during the generation of prompts

So, test cases right now are simple asserts about the returned value. I've overridden the instruct strategy for python here, to circumvent having to extract test case source:

https://github.com/ASSERT-KTH/elle-elle-aime/pull/166/commits/febe8e4af3c536757feb48e6ecea6ca482a34707#diff-3f4ea3e207b6866ea3514390ef0148073207b05d1a8ca4da933d8f926e1be2d5

Got all the other points, will rebase PR.

andre15silva commented 3 weeks ago

Looks like a good solution, thanks!

Let me know if you have any problem with the CI

cadddr commented 2 weeks ago

PR updated.

One tricky issue is that during initialize to get failing test cause, it is necessary to execute test cases, which takes a very long time. For now I'm only checking if a bug has an associated runtime exception (which is stored as part of the dataset), without executing. This skips about 3/4ths of all bugs that do not throw an exception but output the wrong result.

Here is what samples generated for run bug run look like:

{"identifier": "p03378_1144415", "buggy_code": "N, M, X = map(int, raw_input().split(\" \"))\nA = map(int, raw_input().split(\" \"))\nleft, right = 0,0\nfor ai in A:\n  if ai < X: left+=1\n  else: right+=1\nprint(min(right, left))\n\n", "fixed_code": "N, M, X = map(int, input().split(\" \"))\nA = map(int, input().split(\" \"))\nleft, right = 0,0\nfor ai in A:\n  if ai < X: left+=1\n  else: right+=1\nprint(min(right, left))\n", "prompt_strategy": "instruct_python", "prompt": "You are an automatic program repair tool. Your task is to fix the provided buggy code.\n\nThe following code contains a buggy function:\n```python\nN, M, X = map(int, raw_input().split(\" \"))\nA = map(int, raw_input().split(\" \"))\nleft, right = 0,0\nfor ai in A:\n  if ai < X: left+=1\n  else: right+=1\nprint(min(right, left))\n\n\n```\n\nThe code fails the following tests.\n\nTest `5 3 3\n1 2 4 -> 1`:\n```python\nassert result == 1\n```\nTest `5 3 3\n1 2 4 -> 1` error:\n```\nFunction with input 5 3 3\n1 2 4 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 1, in <module>\n    N, M, X = map(int, raw_input().split(\" \"))\nNameError: name 'raw_input' is not defined\n\n```\n\nTest `7 3 2\n4 5 6 -> 0`:\n```python\nassert result == 0\n```\nTest `7 3 2\n4 5 6 -> 0` error:\n```\nFunction with input 7 3 2\n4 5 6 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 1, in <module>\n    N, M, X = map(int, raw_input().split(\" \"))\nNameError: name 'raw_input' is not defined\n\n```\n\nTest `10 7 5\n1 2 3 4 6 8 9 -> 3`:\n```python\nassert result == 3\n```\nTest `10 7 5\n1 2 3 4 6 8 9 -> 3` error:\n```\nFunction with input 10 7 5\n1 2 3 4 6 8 9 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 1, in <module>\n    N, M, X = map(int, raw_input().split(\" \"))\nNameError: name 'raw_input' is not defined\n\n```\n\n\nPlease provide a fixed version of the buggy function, and only that function, inside a code block.\n", "ground_truth": "--- buggy/p03378_1144415.py\t2024-11-13 02:16:02.033930735 +0000\n+++ buggy/p03378_1144415.py\t2024-11-13 02:16:02.033930735 +0000\n@@ -1,7 +1,8 @@\n-N, M, X = map(int, input().split(\" \"))\n-A = map(int, input().split(\" \"))\n+N, M, X = map(int, raw_input().split(\" \"))\n+A = map(int, raw_input().split(\" \"))\n left, right = 0,0\n for ai in A:\n   if ai < X: left+=1\n   else: right+=1\n print(min(right, left))\n+\n"}
{"identifier": "p03239_1026032", "buggy_code": "N, T = map(int, input().split())\nct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n\ncosts = list(filter(lambda x: x[1] <= T, ct))\nif len(costs) == 0:\n  print('TLE')\nelse:\n  costs.sort(key=lambda x: x[0])\n  print(costs[0][2])\n", "fixed_code": "N, T = map(int, input().split())\nct = [list(map(int, input().split())) for _ in range(N)]\ncosts = list(filter(lambda x: x[1] <= T, ct))\nif len(costs) == 0:\n  print('TLE')\nelse:\n  costs.sort(key=lambda x: x[0])\n  print(costs[0][0])\n", "prompt_strategy": "instruct_python", "prompt": "You are an automatic program repair tool. Your task is to fix the provided buggy code.\n\nThe following code contains a buggy function:\n```python\nN, T = map(int, input().split())\nct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n\ncosts = list(filter(lambda x: x[1] <= T, ct))\nif len(costs) == 0:\n  print('TLE')\nelse:\n  costs.sort(key=lambda x: x[0])\n  print(costs[0][2])\n\n```\n\nThe code fails the following tests.\n\nTest `2 3\n1 1100\n2 1\n3 0010\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 0010\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 0010\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n2 80\n4 50 -> 4\n`:\n```python\nassert result == 4\n\n```\nTest `3 70\n7 94\n2 80\n4 50 -> 4\n` error:\n```\nFunction with input 3 70\n7 94\n2 80\n4 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n` error:\n```\nFunction with input 2 3\n1 1000\n2 1\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0101\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0101\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0101\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n3 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n25 8\n5 9\n4 10\n1000 1000\n6 1 -> 5`:\n```python\nassert result == 5\n```\nTest `5 9\n25 8\n5 9\n4 10\n1000 1000\n6 1 -> 5` error:\n```\nFunction with input 5 9\n25 8\n5 9\n4 10\n1000 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n1 0\n1 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n1 0\n1 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n1 0\n1 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 3\n1 1000\n2 4\n3 1010\n4 500 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `4 3\n1 1000\n2 4\n3 1010\n4 500 -> TLE\n` error:\n```\nFunction with input 4 3\n1 1000\n2 4\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 1 -> 3\n`:\n```python\nassert result == 3\n\n```\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 1 -> 3\n` error:\n```\nFunction with input 5 9\n3 8\n5 9\n4 10\n0100 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n2 80\n7 50 -> 7\n`:\n```python\nassert result == 7\n\n```\nTest `3 70\n7 94\n2 80\n7 50 -> 7\n` error:\n```\nFunction with input 3 70\n7 94\n2 80\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 1\n0 0110\n0 1\n-1 0011\n0 -2 -> 0\n`:\n```python\nassert result == 0\n\n```\nTest `2 1\n0 0110\n0 1\n-1 0011\n0 -2 -> 0\n` error:\n```\nFunction with input 2 1\n0 0110\n0 1\n-1 0011\n0 -2 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 -1\n-1 0101\n-1 6\n1 1010\n-1 -2 -> -1\n`:\n```python\nassert result == -1\n\n```\nTest `4 -1\n-1 0101\n-1 6\n1 1010\n-1 -2 -> -1\n` error:\n```\nFunction with input 4 -1\n-1 0101\n-1 6\n1 1010\n-1 -2 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n0 80\n9 50 -> 9\n`:\n```python\nassert result == 9\n\n```\nTest `3 70\n7 94\n0 80\n9 50 -> 9\n` error:\n```\nFunction with input 3 70\n7 94\n0 80\n9 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -1 -2\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0001\n2 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0001\n2 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0001\n2 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n2 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n2 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n2 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n1 0\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n1 0\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n1 0\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n1 -1\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n1 -1\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0100\n2 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n2 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0100\n1 0\n1 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0100\n1 0\n1 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0100\n1 0\n1 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0100\n1 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n1 -1\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 197 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 197 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n3 197 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n2 80\n7 50 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `3 36\n7 94\n2 80\n7 50 -> TLE\n` error:\n```\nFunction with input 3 36\n7 94\n2 80\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 91\n7 94\n2 80\n7 50 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `3 91\n7 94\n2 80\n7 50 -> 2\n` error:\n```\nFunction with input 3 91\n7 94\n2 80\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n3 1010\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 1010\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 1010\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 0\n0 0100\n-1 6\n1 1010\n6 -1 -> 6\n`:\n```python\nassert result == 6\n\n```\nTest `4 0\n0 0100\n-1 6\n1 1010\n6 -1 -> 6\n` error:\n```\nFunction with input 4 0\n0 0100\n-1 6\n1 1010\n6 -1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `0 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `0 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input 0 0\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -1 0\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 0\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 0\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -1 0\n0 0001\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 0\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 0\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -1 0\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 -1\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 -1\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -1 -1\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n2 2\n7 20 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `3 36\n7 94\n2 2\n7 20 -> 2\n` error:\n```\nFunction with input 3 36\n7 94\n2 2\n7 20 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n2 0011\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n2 0011\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n0 1100\n2 1\n2 0011\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n0 1100\n2 1\n2 0011\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n0 1100\n2 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n1 1\n2 0011\n4 156 -> 1\n`:\n```python\nassert result == 1\n\n```\nTest `2 3\n1 1100\n1 1\n2 0011\n4 156 -> 1\n` error:\n```\nFunction with input 2 3\n1 1100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n0 1100\n1 1\n2 0011\n4 156 -> 1\n`:\n```python\nassert result == 1\n\n```\nTest `2 3\n0 1100\n1 1\n2 0011\n4 156 -> 1\n` error:\n```\nFunction with input 2 3\n0 1100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 0\n0 1100\n1 1\n2 0011\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 0\n0 1100\n1 1\n2 0011\n4 156 -> TLE\n` error:\n```\nFunction with input 2 0\n0 1100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 0\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 0\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n` error:\n```\nFunction with input 2 0\n0 0100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0100\n1 1\n2 0001\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0100\n1 1\n2 0001\n4 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0100\n1 1\n2 0001\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0100\n1 1\n2 0001\n3 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0100\n1 1\n2 0001\n3 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0100\n1 1\n2 0001\n3 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 1\n2 0001\n3 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 1\n2 0001\n3 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 1\n2 0001\n3 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 3\n1 1000\n2 4\n3 1000\n4 500 -> TLE`:\n```python\nassert result == TLE\n```\nTest `4 3\n1 1000\n2 4\n3 1000\n4 500 -> TLE` error:\n```\nFunction with input 4 3\n1 1000\n2 4\n3 1000\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n1 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n1 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n1 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n-1 0100\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n-1 0100\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n-1 0100\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n1 1\n2 0101\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n2 0101\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n2 0100\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n2 0100\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n2 0100\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n25 8\n5 9\n4 10\n0000 1000\n6 1 -> 5\n`:\n```python\nassert result == 5\n\n```\nTest `5 9\n25 8\n5 9\n4 10\n0000 1000\n6 1 -> 5\n` error:\n```\nFunction with input 5 9\n25 8\n5 9\n4 10\n0000 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n1 80\n4 50 -> 4\n`:\n```python\nassert result == 4\n\n```\nTest `3 70\n7 94\n1 80\n4 50 -> 4\n` error:\n```\nFunction with input 3 70\n7 94\n1 80\n4 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `4 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n` error:\n```\nFunction with input 4 3\n1 1000\n2 1\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -4\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -4\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -4\n0 0100\n1 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -4\n0 0100\n1 1\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n1 1\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n0 1\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n0 1\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n0 1\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n0 1\n2 0101\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n0 1\n2 0101\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n0 1\n2 0101\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0100\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0100\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0100\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 0100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 1100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 1100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 1100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 -8\n-1 0100\n1 1\n4 1100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n3 2\n7 20 -> 3\n`:\n```python\nassert result == 3\n\n```\nTest `3 36\n7 94\n3 2\n7 20 -> 3\n` error:\n```\nFunction with input 3 36\n7 94\n3 2\n7 20 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `1 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `1 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 1 -1\n0 0101\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n3 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n3 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n3 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0001\n4 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0011\n4 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0011\n4 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0011\n4 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0001\n4 17 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0100\n0 0\n2 0001\n4 17 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 17 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 17 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n0 0\n2 0001\n4 17 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n0 0\n2 0001\n4 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n0 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n0 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n0 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 0100\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 0100\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 0100\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 0100\n6 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1111\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 36 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 36 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1111\n6 36 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 36 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 36 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1101\n6 36 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n2 2\n7 50 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `3 36\n7 94\n2 2\n7 50 -> 2\n` error:\n```\nFunction with input 3 36\n7 94\n2 2\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0001\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0001\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 0\n-1 0111\n-4 0\n2 1011\n1 0 -> -4\n`:\n```python\nassert result == -4\n\n```\nTest `4 0\n-1 0111\n-4 0\n2 1011\n1 0 -> -4\n` error:\n```\nFunction with input 4 0\n-1 0111\n-4 0\n2 1011\n1 0 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n3 0011\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 0011\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `1 0\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `1 0\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 1 0\n0 0101\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n1 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n1 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n1 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n2 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n2 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n2 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 0\n-1 0111\n-1 2\n1 1001\n-2 -1 -> -2\n`:\n```python\nassert result == -2\n\n```\nTest `4 0\n-1 0111\n-1 2\n1 1001\n-2 -1 -> -2\n` error:\n```\nFunction with input 4 0\n-1 0111\n-1 2\n1 1001\n-2 -1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n25 8\n5 9\n4 10\n0100 1000\n6 1 -> 5\n`:\n```python\nassert result == 5\n\n```\nTest `5 9\n25 8\n5 9\n4 10\n0100 1000\n6 1 -> 5\n` error:\n```\nFunction with input 5 9\n25 8\n5 9\n4 10\n0100 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n3 1010\n4 500 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 1010\n4 500 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 0 -> 3\n`:\n```python\nassert result == 3\n\n```\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 0 -> 3\n` error:\n```\nFunction with input 5 9\n3 8\n5 9\n4 10\n0100 1000\n6 0 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n-1 0100\n1 1\n4 1100\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n2 1\n4 0100\n6 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n2 1\n4 0100\n6 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n2 1\n4 0100\n6 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 0\n-1 0100\n1 1\n4 1100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n1 2\n7 20 -> 1\n`:\n```python\nassert result == 1\n\n```\nTest `3 36\n7 94\n1 2\n7 20 -> 1\n` error:\n```\nFunction with input 3 36\n7 94\n1 2\n7 20 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input 1 0\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 60\n1 80\n4 50 -> 4`:\n```python\nassert result == 4\n```\nTest `3 70\n7 60\n1 80\n4 50 -> 4` error:\n```\nFunction with input 3 70\n7 60\n1 80\n4 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\n\nPlease provide a fixed version of the buggy function, and only that function, inside a code block.\n", "ground_truth": "--- buggy/p03239_1026032.py\t2024-11-13 02:15:56.665930921 +0000\n+++ buggy/p03239_1026032.py\t2024-11-13 02:15:56.661930922 +0000\n@@ -1,8 +1,9 @@\n N, T = map(int, input().split())\n-ct = [list(map(int, input().split())) for _ in range(N)]\n+ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n+\n costs = list(filter(lambda x: x[1] <= T, ct))\n if len(costs) == 0:\n   print('TLE')\n else:\n   costs.sort(key=lambda x: x[0])\n-  print(costs[0][0])\n+  print(costs[0][2])\n"}
{"identifier": "p02813_616498", "buggy_code": "import itertools\nn = int(input())\na = tuple([ int(v)-1 for v in input().split() ])\nb = tuple([ int(v)-1 for v in input().split() ])\nt = 0\nfor i in itertools.permutations(range(n)):\n    if a == i:\n        xa = t\n    elif b == i:\n        xb = t\n    t += 1\nprint(abs(xa-xb))\n", "fixed_code": "import itertools\nn = int(input())\na = tuple([ int(v)-1 for v in input().split() ])\nb = tuple([ int(v)-1 for v in input().split() ])\nt = 0\nfor i in itertools.permutations(range(n)):\n    if a == i:\n        xa = t\n    if b == i:\n        xb = t\n    t += 1\nprint(abs(xa-xb))\n", "prompt_strategy": "instruct_python", "prompt": "You are an automatic program repair tool. Your task is to fix the provided buggy code.\n\nThe following code contains a buggy function:\n```python\nimport itertools\nn = int(input())\na = tuple([ int(v)-1 for v in input().split() ])\nb = tuple([ int(v)-1 for v in input().split() ])\nt = 0\nfor i in itertools.permutations(range(n)):\n    if a == i:\n        xa = t\n    elif b == i:\n        xb = t\n    t += 1\nprint(abs(xa-xb))\n\n```\n\nThe code fails the following tests.\n\nTest `8\n7 3 5 4 2 1 6 8\n3 8 2 5 4 6 7 1 -> 17517`:\n```python\nassert result == 17517\n```\nTest `8\n7 3 5 4 2 1 6 8\n3 8 2 5 4 6 7 1 -> 17517` error:\n```\nFunction with input 8\n7 3 5 4 2 1 6 8\n3 8 2 5 4 6 7 1 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 12, in <module>\n    print(abs(xa-xb))\nNameError: name 'xb' is not defined\n\n```\n\nTest `3\n1 2 3\n1 2 3 -> 0`:\n```python\nassert result == 0\n```\nTest `3\n1 2 3\n1 2 3 -> 0` error:\n```\nFunction with input 3\n1 2 3\n1 2 3 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 12, in <module>\n    print(abs(xa-xb))\nNameError: name 'xb' is not defined\n\n```\n\nTest `3\n1 3 2\n3 1 2 -> 3`:\n```python\nassert result == 3\n```\nTest `3\n1 3 2\n3 1 2 -> 3` error:\n```\nFunction with input 3\n1 3 2\n3 1 2 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 12, in <module>\n    print(abs(xa-xb))\nNameError: name 'xb' is not defined\n\n```\n\n\nPlease provide a fixed version of the buggy function, and only that function, inside a code block.\n", "ground_truth": "--- buggy/p02813_616498.py\t2024-11-13 02:15:37.985931569 +0000\n+++ buggy/p02813_616498.py\t2024-11-13 02:15:37.985931569 +0000\n@@ -6,7 +6,7 @@\n for i in itertools.permutations(range(n)):\n     if a == i:\n         xa = t\n-    if b == i:\n+    elif b == i:\n         xb = t\n     t += 1\n print(abs(xa-xb))\n"}
andre15silva commented 2 weeks ago

One tricky issue is that during initialize to get failing test cause, it is necessary to execute test cases, which takes a very long time

One solution is to execute once, store the results, and then always load from them. WDYT?

You can store there in a fork of RunBugRun

andre15silva commented 2 weeks ago

Here is what samples generated for run bug run look like:

{"identifier": "p03378_1144415", "buggy_code": "N, M, X = map(int, raw_input().split(\" \"))\nA = map(int, raw_input().split(\" \"))\nleft, right = 0,0\nfor ai in A:\n  if ai < X: left+=1\n  else: right+=1\nprint(min(right, left))\n\n", "fixed_code": "N, M, X = map(int, input().split(\" \"))\nA = map(int, input().split(\" \"))\nleft, right = 0,0\nfor ai in A:\n  if ai < X: left+=1\n  else: right+=1\nprint(min(right, left))\n", "prompt_strategy": "instruct_python", "prompt": "You are an automatic program repair tool. Your task is to fix the provided buggy code.\n\nThe following code contains a buggy function:\n```python\nN, M, X = map(int, raw_input().split(\" \"))\nA = map(int, raw_input().split(\" \"))\nleft, right = 0,0\nfor ai in A:\n  if ai < X: left+=1\n  else: right+=1\nprint(min(right, left))\n\n\n```\n\nThe code fails the following tests.\n\nTest `5 3 3\n1 2 4 -> 1`:\n```python\nassert result == 1\n```\nTest `5 3 3\n1 2 4 -> 1` error:\n```\nFunction with input 5 3 3\n1 2 4 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 1, in <module>\n    N, M, X = map(int, raw_input().split(\" \"))\nNameError: name 'raw_input' is not defined\n\n```\n\nTest `7 3 2\n4 5 6 -> 0`:\n```python\nassert result == 0\n```\nTest `7 3 2\n4 5 6 -> 0` error:\n```\nFunction with input 7 3 2\n4 5 6 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 1, in <module>\n    N, M, X = map(int, raw_input().split(\" \"))\nNameError: name 'raw_input' is not defined\n\n```\n\nTest `10 7 5\n1 2 3 4 6 8 9 -> 3`:\n```python\nassert result == 3\n```\nTest `10 7 5\n1 2 3 4 6 8 9 -> 3` error:\n```\nFunction with input 10 7 5\n1 2 3 4 6 8 9 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 1, in <module>\n    N, M, X = map(int, raw_input().split(\" \"))\nNameError: name 'raw_input' is not defined\n\n```\n\n\nPlease provide a fixed version of the buggy function, and only that function, inside a code block.\n", "ground_truth": "--- buggy/p03378_1144415.py\t2024-11-13 02:16:02.033930735 +0000\n+++ buggy/p03378_1144415.py\t2024-11-13 02:16:02.033930735 +0000\n@@ -1,7 +1,8 @@\n-N, M, X = map(int, input().split(\" \"))\n-A = map(int, input().split(\" \"))\n+N, M, X = map(int, raw_input().split(\" \"))\n+A = map(int, raw_input().split(\" \"))\n left, right = 0,0\n for ai in A:\n   if ai < X: left+=1\n   else: right+=1\n print(min(right, left))\n+\n"}
{"identifier": "p03239_1026032", "buggy_code": "N, T = map(int, input().split())\nct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n\ncosts = list(filter(lambda x: x[1] <= T, ct))\nif len(costs) == 0:\n  print('TLE')\nelse:\n  costs.sort(key=lambda x: x[0])\n  print(costs[0][2])\n", "fixed_code": "N, T = map(int, input().split())\nct = [list(map(int, input().split())) for _ in range(N)]\ncosts = list(filter(lambda x: x[1] <= T, ct))\nif len(costs) == 0:\n  print('TLE')\nelse:\n  costs.sort(key=lambda x: x[0])\n  print(costs[0][0])\n", "prompt_strategy": "instruct_python", "prompt": "You are an automatic program repair tool. Your task is to fix the provided buggy code.\n\nThe following code contains a buggy function:\n```python\nN, T = map(int, input().split())\nct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n\ncosts = list(filter(lambda x: x[1] <= T, ct))\nif len(costs) == 0:\n  print('TLE')\nelse:\n  costs.sort(key=lambda x: x[0])\n  print(costs[0][2])\n\n```\n\nThe code fails the following tests.\n\nTest `2 3\n1 1100\n2 1\n3 0010\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 0010\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 0010\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n2 80\n4 50 -> 4\n`:\n```python\nassert result == 4\n\n```\nTest `3 70\n7 94\n2 80\n4 50 -> 4\n` error:\n```\nFunction with input 3 70\n7 94\n2 80\n4 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n` error:\n```\nFunction with input 2 3\n1 1000\n2 1\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0101\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0101\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0101\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n3 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n25 8\n5 9\n4 10\n1000 1000\n6 1 -> 5`:\n```python\nassert result == 5\n```\nTest `5 9\n25 8\n5 9\n4 10\n1000 1000\n6 1 -> 5` error:\n```\nFunction with input 5 9\n25 8\n5 9\n4 10\n1000 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n1 0\n1 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n1 0\n1 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n1 0\n1 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 3\n1 1000\n2 4\n3 1010\n4 500 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `4 3\n1 1000\n2 4\n3 1010\n4 500 -> TLE\n` error:\n```\nFunction with input 4 3\n1 1000\n2 4\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 1 -> 3\n`:\n```python\nassert result == 3\n\n```\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 1 -> 3\n` error:\n```\nFunction with input 5 9\n3 8\n5 9\n4 10\n0100 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n2 80\n7 50 -> 7\n`:\n```python\nassert result == 7\n\n```\nTest `3 70\n7 94\n2 80\n7 50 -> 7\n` error:\n```\nFunction with input 3 70\n7 94\n2 80\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 1\n0 0110\n0 1\n-1 0011\n0 -2 -> 0\n`:\n```python\nassert result == 0\n\n```\nTest `2 1\n0 0110\n0 1\n-1 0011\n0 -2 -> 0\n` error:\n```\nFunction with input 2 1\n0 0110\n0 1\n-1 0011\n0 -2 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 -1\n-1 0101\n-1 6\n1 1010\n-1 -2 -> -1\n`:\n```python\nassert result == -1\n\n```\nTest `4 -1\n-1 0101\n-1 6\n1 1010\n-1 -2 -> -1\n` error:\n```\nFunction with input 4 -1\n-1 0101\n-1 6\n1 1010\n-1 -2 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n0 80\n9 50 -> 9\n`:\n```python\nassert result == 9\n\n```\nTest `3 70\n7 94\n0 80\n9 50 -> 9\n` error:\n```\nFunction with input 3 70\n7 94\n0 80\n9 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -1 -2\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0001\n2 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0001\n2 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0001\n2 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n2 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n2 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n2 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n1 0\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n1 0\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n1 0\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0101\n1 -1\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n1 -1\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0100\n2 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n2 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n2 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0100\n1 0\n1 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0100\n1 0\n1 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0100\n1 0\n1 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0100\n1 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n1 -1\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n1 -1\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 197 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 197 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n3 197 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n2 80\n7 50 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `3 36\n7 94\n2 80\n7 50 -> TLE\n` error:\n```\nFunction with input 3 36\n7 94\n2 80\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 91\n7 94\n2 80\n7 50 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `3 91\n7 94\n2 80\n7 50 -> 2\n` error:\n```\nFunction with input 3 91\n7 94\n2 80\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n3 1010\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 1010\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 1010\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 0\n0 0100\n-1 6\n1 1010\n6 -1 -> 6\n`:\n```python\nassert result == 6\n\n```\nTest `4 0\n0 0100\n-1 6\n1 1010\n6 -1 -> 6\n` error:\n```\nFunction with input 4 0\n0 0100\n-1 6\n1 1010\n6 -1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `0 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `0 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input 0 0\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -1 0\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 0\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 0\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -1 0\n0 0001\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 0\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 0\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -1 0\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-1 -1\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-1 -1\n0 0001\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input -1 -1\n0 0001\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n2 2\n7 20 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `3 36\n7 94\n2 2\n7 20 -> 2\n` error:\n```\nFunction with input 3 36\n7 94\n2 2\n7 20 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n2 0011\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n2 0011\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n0 1100\n2 1\n2 0011\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n0 1100\n2 1\n2 0011\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n0 1100\n2 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n1 1\n2 0011\n4 156 -> 1\n`:\n```python\nassert result == 1\n\n```\nTest `2 3\n1 1100\n1 1\n2 0011\n4 156 -> 1\n` error:\n```\nFunction with input 2 3\n1 1100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n0 1100\n1 1\n2 0011\n4 156 -> 1\n`:\n```python\nassert result == 1\n\n```\nTest `2 3\n0 1100\n1 1\n2 0011\n4 156 -> 1\n` error:\n```\nFunction with input 2 3\n0 1100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 0\n0 1100\n1 1\n2 0011\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 0\n0 1100\n1 1\n2 0011\n4 156 -> TLE\n` error:\n```\nFunction with input 2 0\n0 1100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 0\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 0\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n` error:\n```\nFunction with input 2 0\n0 0100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0100\n1 1\n2 0011\n4 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0100\n1 1\n2 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0100\n1 1\n2 0001\n4 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0100\n1 1\n2 0001\n4 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0100\n1 1\n2 0001\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0100\n1 1\n2 0001\n3 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0100\n1 1\n2 0001\n3 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0100\n1 1\n2 0001\n3 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 1\n2 0001\n3 156 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 1\n2 0001\n3 156 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 1\n2 0001\n3 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 3\n1 1000\n2 4\n3 1000\n4 500 -> TLE`:\n```python\nassert result == TLE\n```\nTest `4 3\n1 1000\n2 4\n3 1000\n4 500 -> TLE` error:\n```\nFunction with input 4 3\n1 1000\n2 4\n3 1000\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n1 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n1 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n1 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n-1 0100\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n-1 0100\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n-1 0100\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n1 1\n2 0101\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n2 0101\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n2 0101\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n2 0100\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n2 0100\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n2 0100\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n25 8\n5 9\n4 10\n0000 1000\n6 1 -> 5\n`:\n```python\nassert result == 5\n\n```\nTest `5 9\n25 8\n5 9\n4 10\n0000 1000\n6 1 -> 5\n` error:\n```\nFunction with input 5 9\n25 8\n5 9\n4 10\n0000 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 94\n1 80\n4 50 -> 4\n`:\n```python\nassert result == 4\n\n```\nTest `3 70\n7 94\n1 80\n4 50 -> 4\n` error:\n```\nFunction with input 3 70\n7 94\n1 80\n4 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `4 3\n1 1000\n2 1\n3 1010\n4 500 -> 2\n` error:\n```\nFunction with input 4 3\n1 1000\n2 1\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -4\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -4\n0 0100\n1 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -4\n0 0100\n1 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -4\n0 0100\n1 1\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n1 1\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n1 1\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n0 1\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n0 1\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n0 1\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -4\n0 0100\n0 1\n2 0101\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -4\n0 0100\n0 1\n2 0101\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -4\n0 0100\n0 1\n2 0101\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0100\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0100\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0100\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 0100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 1100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 1100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 1100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 -8\n-1 0100\n1 1\n4 1100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n3 2\n7 20 -> 3\n`:\n```python\nassert result == 3\n\n```\nTest `3 36\n7 94\n3 2\n7 20 -> 3\n` error:\n```\nFunction with input 3 36\n7 94\n3 2\n7 20 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `1 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `1 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 1 -1\n0 0101\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n3 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n3 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n3 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0001\n4 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0011\n4 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0011\n4 12 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0011\n4 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0100\n0 0\n2 0001\n4 17 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0100\n0 0\n2 0001\n4 17 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0100\n0 0\n2 0001\n4 17 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 17 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 17 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n0 0\n2 0001\n4 17 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n0 0\n2 0001\n4 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n0 0\n2 0001\n4 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-4 -2\n0 0101\n0 0\n2 0001\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-4 -2\n0 0101\n0 0\n2 0001\n3 31 -> TLE\n` error:\n```\nFunction with input -4 -2\n0 0101\n0 0\n2 0001\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 0100\n3 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 0100\n3 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 0100\n3 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n1 1\n4 0100\n6 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n1 1\n4 0100\n6 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1101\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1111\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 36 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1111\n6 36 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1111\n6 36 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 36 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n0 0001\n1 1\n4 1101\n6 36 -> TLE\n` error:\n```\nFunction with input -5 0\n0 0001\n1 1\n4 1101\n6 36 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n2 2\n7 50 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `3 36\n7 94\n2 2\n7 50 -> 2\n` error:\n```\nFunction with input 3 36\n7 94\n2 2\n7 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -2\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -2\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -2\n0 0001\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -4\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -4\n0 0001\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input -2 -4\n0 0001\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 0\n-1 0111\n-4 0\n2 1011\n1 0 -> -4\n`:\n```python\nassert result == -4\n\n```\nTest `4 0\n-1 0111\n-4 0\n2 1011\n1 0 -> -4\n` error:\n```\nFunction with input 4 0\n-1 0111\n-4 0\n2 1011\n1 0 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n3 0011\n4 156 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 0011\n4 156 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 0011\n4 156 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `1 0\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `1 0\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 1 0\n0 0101\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n1 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n1 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n1 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-2 -1\n0 0101\n2 0\n2 0001\n3 12 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-2 -1\n0 0101\n2 0\n2 0001\n3 12 -> TLE\n` error:\n```\nFunction with input -2 -1\n0 0101\n2 0\n2 0001\n3 12 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `4 0\n-1 0111\n-1 2\n1 1001\n-2 -1 -> -2\n`:\n```python\nassert result == -2\n\n```\nTest `4 0\n-1 0111\n-1 2\n1 1001\n-2 -1 -> -2\n` error:\n```\nFunction with input 4 0\n-1 0111\n-1 2\n1 1001\n-2 -1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n25 8\n5 9\n4 10\n0100 1000\n6 1 -> 5\n`:\n```python\nassert result == 5\n\n```\nTest `5 9\n25 8\n5 9\n4 10\n0100 1000\n6 1 -> 5\n` error:\n```\nFunction with input 5 9\n25 8\n5 9\n4 10\n0100 1000\n6 1 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 3\n1 1100\n2 1\n3 1010\n4 500 -> 2\n`:\n```python\nassert result == 2\n\n```\nTest `2 3\n1 1100\n2 1\n3 1010\n4 500 -> 2\n` error:\n```\nFunction with input 2 3\n1 1100\n2 1\n3 1010\n4 500 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 0 -> 3\n`:\n```python\nassert result == 3\n\n```\nTest `5 9\n3 8\n5 9\n4 10\n0100 1000\n6 0 -> 3\n` error:\n```\nFunction with input 5 9\n3 8\n5 9\n4 10\n0100 1000\n6 0 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 28 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 28 -> TLE\n` error:\n```\nFunction with input -5 0\n-1 0100\n1 1\n4 1100\n6 28 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n3 14 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n3 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 2\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 2\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 2\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `2 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `2 -1\n0 0101\n1 0\n2 0001\n1 14 -> TLE\n` error:\n```\nFunction with input 2 -1\n0 0101\n1 0\n2 0001\n1 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 -8\n0 0100\n2 1\n4 0100\n6 31 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 -8\n0 0100\n2 1\n4 0100\n6 31 -> TLE\n` error:\n```\nFunction with input -5 -8\n0 0100\n2 1\n4 0100\n6 31 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `-5 0\n-1 0100\n1 1\n4 1100\n6 45 -> TLE\n` error:\n```\nFunction with input -5 0\n-1 0100\n1 1\n4 1100\n6 45 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 36\n7 94\n1 2\n7 20 -> 1\n`:\n```python\nassert result == 1\n\n```\nTest `3 36\n7 94\n1 2\n7 20 -> 1\n` error:\n```\nFunction with input 3 36\n7 94\n1 2\n7 20 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n`:\n```python\nassert result == TLE\n\n```\nTest `1 0\n0 0101\n1 0\n2 0001\n2 14 -> TLE\n` error:\n```\nFunction with input 1 0\n0 0101\n1 0\n2 0001\n2 14 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\nTest `3 70\n7 60\n1 80\n4 50 -> 4`:\n```python\nassert result == 4\n```\nTest `3 70\n7 60\n1 80\n4 50 -> 4` error:\n```\nFunction with input 3 70\n7 60\n1 80\n4 50 failed with error: TypeError\nTraceback (most recent call last):\n  File \"file.py\", line 2, in <module>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n  File \"file.py\", line 2, in <listcomp>\n    ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\nTypeError: list expected at most 1 argument, got 2\n\n```\n\n\nPlease provide a fixed version of the buggy function, and only that function, inside a code block.\n", "ground_truth": "--- buggy/p03239_1026032.py\t2024-11-13 02:15:56.665930921 +0000\n+++ buggy/p03239_1026032.py\t2024-11-13 02:15:56.661930922 +0000\n@@ -1,8 +1,9 @@\n N, T = map(int, input().split())\n-ct = [list(map(int, input().split())) for _ in range(N)]\n+ct = [list(map(int, input().split()), idx+1) for idx in range(N)]\n+\n costs = list(filter(lambda x: x[1] <= T, ct))\n if len(costs) == 0:\n   print('TLE')\n else:\n   costs.sort(key=lambda x: x[0])\n-  print(costs[0][0])\n+  print(costs[0][2])\n"}
{"identifier": "p02813_616498", "buggy_code": "import itertools\nn = int(input())\na = tuple([ int(v)-1 for v in input().split() ])\nb = tuple([ int(v)-1 for v in input().split() ])\nt = 0\nfor i in itertools.permutations(range(n)):\n    if a == i:\n        xa = t\n    elif b == i:\n        xb = t\n    t += 1\nprint(abs(xa-xb))\n", "fixed_code": "import itertools\nn = int(input())\na = tuple([ int(v)-1 for v in input().split() ])\nb = tuple([ int(v)-1 for v in input().split() ])\nt = 0\nfor i in itertools.permutations(range(n)):\n    if a == i:\n        xa = t\n    if b == i:\n        xb = t\n    t += 1\nprint(abs(xa-xb))\n", "prompt_strategy": "instruct_python", "prompt": "You are an automatic program repair tool. Your task is to fix the provided buggy code.\n\nThe following code contains a buggy function:\n```python\nimport itertools\nn = int(input())\na = tuple([ int(v)-1 for v in input().split() ])\nb = tuple([ int(v)-1 for v in input().split() ])\nt = 0\nfor i in itertools.permutations(range(n)):\n    if a == i:\n        xa = t\n    elif b == i:\n        xb = t\n    t += 1\nprint(abs(xa-xb))\n\n```\n\nThe code fails the following tests.\n\nTest `8\n7 3 5 4 2 1 6 8\n3 8 2 5 4 6 7 1 -> 17517`:\n```python\nassert result == 17517\n```\nTest `8\n7 3 5 4 2 1 6 8\n3 8 2 5 4 6 7 1 -> 17517` error:\n```\nFunction with input 8\n7 3 5 4 2 1 6 8\n3 8 2 5 4 6 7 1 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 12, in <module>\n    print(abs(xa-xb))\nNameError: name 'xb' is not defined\n\n```\n\nTest `3\n1 2 3\n1 2 3 -> 0`:\n```python\nassert result == 0\n```\nTest `3\n1 2 3\n1 2 3 -> 0` error:\n```\nFunction with input 3\n1 2 3\n1 2 3 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 12, in <module>\n    print(abs(xa-xb))\nNameError: name 'xb' is not defined\n\n```\n\nTest `3\n1 3 2\n3 1 2 -> 3`:\n```python\nassert result == 3\n```\nTest `3\n1 3 2\n3 1 2 -> 3` error:\n```\nFunction with input 3\n1 3 2\n3 1 2 failed with error: NameError\nTraceback (most recent call last):\n  File \"file.py\", line 12, in <module>\n    print(abs(xa-xb))\nNameError: name 'xb' is not defined\n\n```\n\n\nPlease provide a fixed version of the buggy function, and only that function, inside a code block.\n", "ground_truth": "--- buggy/p02813_616498.py\t2024-11-13 02:15:37.985931569 +0000\n+++ buggy/p02813_616498.py\t2024-11-13 02:15:37.985931569 +0000\n@@ -6,7 +6,7 @@\n for i in itertools.permutations(range(n)):\n     if a == i:\n         xa = t\n-    if b == i:\n+    elif b == i:\n         xb = t\n     t += 1\n print(abs(xa-xb))\n"}

They look great! Thanks for the work in integrating RunBugRun :))

cadddr commented 1 week ago

@andre15silva I've cleaned up the test format in the prompt, it looks much better this way. Keep in mind run bug run bugs can contain as much as a hundred test cases!

Also added a caching logic for test results when the dataset is first loaded, takes an hour without timeout.

I am going to go through the rest of the pipeline, e.g. generate_patches and evaluate_patches.

For the CI, how do I make sure my changes pass?

andre15silva commented 1 week ago

I've cleaned up the test format in the prompt, it looks much better this way.

Thanks! Could you add a test for this prompting method?

Something similar to https://github.com/ASSERT-KTH/repairbench-framework/blob/c424b292fd0a1bc5dd6d02ea315921a63ce671c6/tests/sample/instruct/test_instruct.py#L9

Keep in mind run bug run bugs can contain as much as a hundred test cases!

That's great, the more the merrier! If it becomes too much, we can always add an option to include only N failing tests later.

Also added a caching logic for test results when the dataset is first loaded, takes an hour without timeout.

I see. I think this might not be the best approach since it requires executing every time we start a new instance of the script.

Would you be able run this once, save the all the results in a json file and then load them from this json file? That way we do not need to be executing all the time. WDYT?

I am going to go through the rest of the pipeline, e.g. generate_patches and evaluate_patches. For the CI, how do I make sure my changes pass?

Sounds great, let me know if you have any doubt!

I have now enabled the CI in your PR, so it should run every time you push a new commit.

Current problems:

  1. You need to lint your code. To do this, you can run the following command black elleelleaime tests *.py and then push a commit with those changes. When the lint actions fails, this is how you can fix it.
  2. I noticed you changed the setup.sh file to support RunBugRun. This is great, but you also commented out the rest of the scripts. To make sure all tests work, you will need to uncomment them again.
cadddr commented 4 days ago

@andre15silva I've added the TestInstruct class for run bug run and checked in an archive with pre-computed test results (uncompressed during of setup). Also, removed comments from setup and removed rbugr submodule, which I originally added but ended up not using. Trying to finish patch evaluation before I go on vacation.

cadddr commented 3 days ago

I quickly went through the rest of the pipeline: generate, evaluate, export -- all seemed to output plausible results. Couple of things I noticed:

  1. Command in Readme seems incorrect, this worked for me: python generate_patches.py samples_runbugrun_instruct_python_mini.jsonl openai-chatcompletion --n_workers 1 --num_return_sequences 2 --temperature 1.0 --strategy openai --model_name gpt-4o-mini
  2. When running evaluate I started getting path errors for checked out bugs (here elleelleaime/evaluate/strategies/text/replace.py) It looks like they are checked out into a temp directory without differentiation between whether they are buggy or fixed (I followed quixbugs as template), however the ground truth diffs refer to the buggy/fixed subdirectories. Which one should it be? I temporarily hardcoded everything to be under buggy, but obviously this isn't ideal.
  3. Surprised there wasn't any language-specific post-processing of responses that I had to do for python, (like there was of the prompts). Does it simply come down to extracting whatever code under the ``` and then computing the diff and comparing it to ground truth?
andre15silva commented 3 days ago

Command in Readme seems incorrect, this worked for me: python generate_patches.py samples_runbugrun_instruct_python_mini.jsonl openai-chatcompletion --n_workers 1 --num_return_sequences 2 --temperature 1.0 --strategy openai --model_name gpt-4o-mini

Thanks for reporting the error, I updated the README!

When running evaluate I started getting path errors for checked out bugs (here elleelleaime/evaluate/strategies/text/replace.py) It looks like they are checked out into a temp directory without differentiation between whether they are buggy or fixed (I followed quixbugs as template), however the ground truth diffs refer to the buggy/fixed subdirectories. Which one should it be? I temporarily hardcoded everything to be under buggy, but obviously this isn't ideal.

The evaluation strategy always checks-out the buggy version, which is the default option for checkout. We could explicitly set fixed=False but this would not change the functionality.

As for the buggy and fixed programs having different paths, I suggest we only look at the buggy path.

See what I have done for HumanEval-Java (https://github.com/ASSERT-KTH/repairbench-framework/blob/master/elleelleaime/core/benchmarks/humanevaljava/humanevaljavabug.py), where the setup is similar. I also hardcode the paths when building the benchmark (https://github.com/ASSERT-KTH/repairbench-framework/blob/30cf46f63541c2ed50853a6e7c2d6f12c7f67bed/elleelleaime/core/benchmarks/humanevaljava/humanevaljava.py#L54-L71).

Surprised there wasn't any language-specific post-processing of responses that I had to do for python, (like there was of the prompts). Does it simply come down to extracting whatever code under the ``` and then computing the diff and comparing it to ground truth?

Yes and no.

There is a textual comparison between the fixed_code and the generated code.

However, if this returns false, we still need to evaluate the generated code by running the tests. This part is based on textual replacement: the buggy_code is directly replaced with the candidate patch. This is language agnostic, so there is no need for language-specific logic here. After this, we can compile and test.


For the CI, you should run black elleelleaime tests *.py to make sure linting is passing.

I also added a comment to fix a typo in your PR.

Thanks :))