---
tags: decompiler
---
# MWE 155 by Ahmed
## Error 1/155
Python version: 3.7
Decompyle3: Failed
Uncompyle6: Failed
Error: `Deparsing stopped due to parse error`
### MWE1:
```python=
def expect_node():
if a:
pass
elif b:
if c:
pass
elif h:
if d or e or f or g:
self.expect_flow_sequence()
else:
pass
```
#### Closest Solution1:
```python=
def expect_node():
if a:
pass
elif b:
if c:
pass
elif h:
temp = d or e
if temp or f or g:
self.expect_flow_sequence()
else:
pass
```
```c=
1 0 LOAD_CONST 0 (<code object expect_node at 0x7ffbf1744e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('expect_node')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (expect_node)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object expect_node at 0x7ffbf1744e40, file "main.py", line 1>:
2 0 LOAD_GLOBAL 0 (a)
2 POP_JUMP_IF_FALSE 6
3 4 JUMP_FORWARD 44 (to 50)
4 >> 6 LOAD_GLOBAL 1 (b)
8 POP_JUMP_IF_FALSE 50
5 10 LOAD_GLOBAL 2 (c)
12 POP_JUMP_IF_FALSE 16
6 14 JUMP_FORWARD 34 (to 50)
7 >> 16 LOAD_GLOBAL 3 (h)
18 POP_JUMP_IF_FALSE 50
8 20 LOAD_GLOBAL 4 (d)
22 JUMP_IF_TRUE_OR_POP 26
24 LOAD_GLOBAL 5 (e)
>> 26 STORE_FAST 0 (temp)
9 28 LOAD_FAST 0 (temp)
30 POP_JUMP_IF_TRUE 40
32 LOAD_GLOBAL 6 (f)
34 POP_JUMP_IF_TRUE 40
36 LOAD_GLOBAL 7 (g)
38 POP_JUMP_IF_FALSE 50
10 >> 40 LOAD_GLOBAL 8 (self)
42 LOAD_METHOD 9 (expect_flow_sequence)
44 CALL_METHOD 0
46 POP_TOP
48 JUMP_FORWARD 0 (to 50)
12 >> 50 LOAD_CONST 0 (None)
52 RETURN_VALUE
```
#### MWE1 data:
Bytecode for MWE:
```c=
1 0 LOAD_CONST 0 (<code object expect_node at 0x7fc490456e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('expect_node')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (expect_node)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object expect_node at 0x7fc490456e40, file "main.py", line 1>:
2 0 LOAD_GLOBAL 0 (a)
2 POP_JUMP_IF_FALSE 6
3 4 JUMP_FORWARD 40 (to 46)
4 >> 6 LOAD_GLOBAL 1 (b)
8 POP_JUMP_IF_FALSE 46
5 10 LOAD_GLOBAL 2 (c)
12 POP_JUMP_IF_FALSE 16
6 14 JUMP_FORWARD 30 (to 46)
7 >> 16 LOAD_GLOBAL 3 (h)
18 POP_JUMP_IF_FALSE 46
8 20 LOAD_GLOBAL 4 (d)
22 POP_JUMP_IF_TRUE 36
24 LOAD_GLOBAL 5 (e)
26 POP_JUMP_IF_TRUE 36
28 LOAD_GLOBAL 6 (f)
30 POP_JUMP_IF_TRUE 36
32 LOAD_GLOBAL 7 (g)
34 POP_JUMP_IF_FALSE 46
9 >> 36 LOAD_GLOBAL 8 (self)
38 LOAD_METHOD 9 (expect_flow_sequence)
40 CALL_METHOD 0
42 POP_TOP
44 JUMP_FORWARD 0 (to 46)
11 >> 46 LOAD_CONST 0 (None)
48 RETURN_VALUE
```
### MWE2:
```python=
def prepare_tag_prefix():
while e:
if a or b or 'a' <= ch <= 'z' or d:
end += 1
else:
for x in y:
pass
```
#### Closest Solution2:
```python=
def prepare_tag_prefix():
while e:
temp = 'a' <= ch <= 'z'
if a or b or temp or d:
end += 1
else:
for x in y:
pass
```
```c=
1 0 LOAD_CONST 0 (<code object prepare_tag_prefix at 0x7fc0790e0e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('prepare_tag_prefix')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (prepare_tag_prefix)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object prepare_tag_prefix at 0x7fc0790e0e40, file "main.py", line 1>:
2 0 SETUP_LOOP 72 (to 74)
>> 2 LOAD_GLOBAL 0 (e)
4 POP_JUMP_IF_FALSE 72
3 6 LOAD_CONST 1 ('a')
8 LOAD_GLOBAL 1 (ch)
10 DUP_TOP
12 ROT_THREE
14 COMPARE_OP 1 (<=)
16 JUMP_IF_FALSE_OR_POP 24
18 LOAD_CONST 2 ('z')
20 COMPARE_OP 1 (<=)
22 JUMP_FORWARD 4 (to 28)
>> 24 ROT_TWO
26 POP_TOP
>> 28 STORE_FAST 0 (temp)
4 30 LOAD_GLOBAL 2 (a)
32 POP_JUMP_IF_TRUE 46
34 LOAD_GLOBAL 3 (b)
36 POP_JUMP_IF_TRUE 46
38 LOAD_FAST 0 (temp)
40 POP_JUMP_IF_TRUE 46
42 LOAD_GLOBAL 4 (d)
44 POP_JUMP_IF_FALSE 56
5 >> 46 LOAD_FAST 1 (end)
48 LOAD_CONST 3 (1)
50 INPLACE_ADD
52 STORE_FAST 1 (end)
54 JUMP_ABSOLUTE 2
7 >> 56 SETUP_LOOP 12 (to 70)
58 LOAD_GLOBAL 5 (y)
60 GET_ITER
>> 62 FOR_ITER 4 (to 68)
64 STORE_FAST 2 (x)
8 66 JUMP_ABSOLUTE 62
>> 68 POP_BLOCK
>> 70 JUMP_ABSOLUTE 2
>> 72 POP_BLOCK
>> 74 LOAD_CONST 0 (None)
76 RETURN_VALUE
```
#### MWE2 data:
Bytecode for MWE:
```c=
1 0 LOAD_CONST 0 (<code object prepare_tag_prefix at 0x7f0dcece0e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('prepare_tag_prefix')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (prepare_tag_prefix)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object prepare_tag_prefix at 0x7f0dcece0e40, file "main.py", line 1>:
2 0 SETUP_LOOP 50 (to 52)
>> 2 LOAD_GLOBAL 0 (e)
4 POP_JUMP_IF_FALSE 50
3 6 LOAD_GLOBAL 1 (a)
8 POP_JUMP_IF_TRUE 40
10 LOAD_GLOBAL 2 (b)
12 POP_JUMP_IF_TRUE 40
14 LOAD_CONST 1 ('a')
16 LOAD_GLOBAL 3 (ch)
18 DUP_TOP
20 ROT_THREE
22 COMPARE_OP 1 (<=)
24 POP_JUMP_IF_FALSE 34
26 LOAD_CONST 2 ('z')
28 COMPARE_OP 1 (<=)
30 POP_JUMP_IF_TRUE 40
32 JUMP_FORWARD 2 (to 36)
>> 34 POP_TOP
>> 36 LOAD_GLOBAL 4 (d)
38 POP_JUMP_IF_FALSE 2
4 >> 40 LOAD_FAST 0 (end)
42 LOAD_CONST 3 (1)
44 INPLACE_ADD
46 STORE_FAST 0 (end)
48 JUMP_ABSOLUTE 2
>> 50 POP_BLOCK
>> 52 LOAD_CONST 0 (None)
54 RETURN_VALUE
```
### MWE3:
```python=
def prepare_tag():
while x:
if b or c or d or (ch == '!' and handle != '!'):
end += 1
else:
if a < b:
pass
```
#### Closest Solution3:
```python=
def prepare_tag_prefix():
while e:
temp = 'a' <= ch <= 'z'
if a or b or temp or d:
end += 1
else:
for x in y:
pass
```
```c=
1 0 LOAD_CONST 0 (<code object prepare_tag_prefix at 0x7fc0790e0e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('prepare_tag_prefix')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (prepare_tag_prefix)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object prepare_tag_prefix at 0x7fc0790e0e40, file "main.py", line 1>:
2 0 SETUP_LOOP 72 (to 74)
>> 2 LOAD_GLOBAL 0 (e)
4 POP_JUMP_IF_FALSE 72
3 6 LOAD_CONST 1 ('a')
8 LOAD_GLOBAL 1 (ch)
10 DUP_TOP
12 ROT_THREE
14 COMPARE_OP 1 (<=)
16 JUMP_IF_FALSE_OR_POP 24
18 LOAD_CONST 2 ('z')
20 COMPARE_OP 1 (<=)
22 JUMP_FORWARD 4 (to 28)
>> 24 ROT_TWO
26 POP_TOP
>> 28 STORE_FAST 0 (temp)
4 30 LOAD_GLOBAL 2 (a)
32 POP_JUMP_IF_TRUE 46
34 LOAD_GLOBAL 3 (b)
36 POP_JUMP_IF_TRUE 46
38 LOAD_FAST 0 (temp)
40 POP_JUMP_IF_TRUE 46
42 LOAD_GLOBAL 4 (d)
44 POP_JUMP_IF_FALSE 56
5 >> 46 LOAD_FAST 1 (end)
48 LOAD_CONST 3 (1)
50 INPLACE_ADD
52 STORE_FAST 1 (end)
54 JUMP_ABSOLUTE 2
7 >> 56 SETUP_LOOP 12 (to 70)
58 LOAD_GLOBAL 5 (y)
60 GET_ITER
>> 62 FOR_ITER 4 (to 68)
64 STORE_FAST 2 (x)
8 66 JUMP_ABSOLUTE 62
>> 68 POP_BLOCK
>> 70 JUMP_ABSOLUTE 2
>> 72 POP_BLOCK
>> 74 LOAD_CONST 0 (None)
76 RETURN_VALUE
```
#### MWE3 data:
Bytecode for MWE:
```c=
1 0 LOAD_CONST 0 (<code object prepare_tag_prefix at 0x7f0dcece0e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('prepare_tag_prefix')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (prepare_tag_prefix)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object prepare_tag_prefix at 0x7f0dcece0e40, file "main.py", line 1>:
2 0 SETUP_LOOP 50 (to 52)
>> 2 LOAD_GLOBAL 0 (e)
4 POP_JUMP_IF_FALSE 50
3 6 LOAD_GLOBAL 1 (a)
8 POP_JUMP_IF_TRUE 40
10 LOAD_GLOBAL 2 (b)
12 POP_JUMP_IF_TRUE 40
14 LOAD_CONST 1 ('a')
16 LOAD_GLOBAL 3 (ch)
18 DUP_TOP
20 ROT_THREE
22 COMPARE_OP 1 (<=)
24 POP_JUMP_IF_FALSE 34
26 LOAD_CONST 2 ('z')
28 COMPARE_OP 1 (<=)
30 POP_JUMP_IF_TRUE 40
32 JUMP_FORWARD 2 (to 36)
>> 34 POP_TOP
>> 36 LOAD_GLOBAL 4 (d)
38 POP_JUMP_IF_FALSE 2
4 >> 40 LOAD_FAST 0 (end)
42 LOAD_CONST 3 (1)
44 INPLACE_ADD
46 STORE_FAST 0 (end)
48 JUMP_ABSOLUTE 2
>> 50 POP_BLOCK
>> 52 LOAD_CONST 0 (None)
54 RETURN_VALUE
```
### MWE4:
```python=
def analyze_scalar():
while x:
if (f):
pass
```
#### Closest Solution4:
```python=
def analyze_scalar():
while x:
if (f):
x = x
pass
```
```c=
1 0 LOAD_CONST 0 (<code object analyze_scalar at 0x7f2afe6cde40, file "main.py", line 1>)
2 LOAD_CONST 1 ('analyze_scalar')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (analyze_scalar)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object analyze_scalar at 0x7f2afe6cde40, file "main.py", line 1>:
3 0 SETUP_LOOP 16 (to 18)
>> 2 LOAD_FAST 0 (x)
4 POP_JUMP_IF_FALSE 16
4 6 LOAD_GLOBAL 0 (f)
8 POP_JUMP_IF_FALSE 2
5 10 LOAD_FAST 0 (x)
12 STORE_FAST 0 (x)
6 14 JUMP_ABSOLUTE 2
>> 16 POP_BLOCK
>> 18 LOAD_CONST 0 (None)
20 RETURN_VALUE
```
#### MWE3 data:
Bytecode for MWE:
```c=
1 0 LOAD_CONST 0 (<code object analyze_scalar at 0x7fe948559e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('analyze_scalar')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (analyze_scalar)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object analyze_scalar at 0x7fe948559e40, file "main.py", line 1>:
3 0 SETUP_LOOP 12 (to 14)
>> 2 LOAD_GLOBAL 0 (x)
4 POP_JUMP_IF_FALSE 12
4 6 LOAD_GLOBAL 1 (f)
8 POP_JUMP_IF_FALSE 2
5 10 JUMP_ABSOLUTE 2
>> 12 POP_BLOCK
>> 14 LOAD_CONST 0 (None)
16 RETURN_VALUE
```
### MWE5:
```python=
def write_indent():
if a or (c and d):
x
if b:
y
```
#### Closest Solution5:
```python=
def write_indent():
temp = c and d
if a or (temp):
x
if b:
y
```
```c=
1 0 LOAD_CONST 0 (<code object write_indent at 0x7f29cea0ee40, file "main.py", line 1>)
2 LOAD_CONST 1 ('write_indent')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (write_indent)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object write_indent at 0x7f29cea0ee40, file "main.py", line 1>:
2 0 LOAD_GLOBAL 0 (c)
2 JUMP_IF_FALSE_OR_POP 6
4 LOAD_GLOBAL 1 (d)
>> 6 STORE_FAST 0 (temp)
3 8 LOAD_GLOBAL 2 (a)
10 POP_JUMP_IF_TRUE 16
12 LOAD_FAST 0 (temp)
14 POP_JUMP_IF_FALSE 20
4 >> 16 LOAD_GLOBAL 3 (x)
18 POP_TOP
5 >> 20 LOAD_GLOBAL 4 (b)
22 POP_JUMP_IF_FALSE 28
6 24 LOAD_GLOBAL 5 (y)
26 POP_TOP
>> 28 LOAD_CONST 0 (None)
30 RETURN_VALUE
```
#### MWE3 data:
Bytecode for MWE:
```c=
1 0 LOAD_CONST 0 (<code object write_indent at 0x7fe027c93e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('write_indent')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (write_indent)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object write_indent at 0x7fe027c93e40, file "main.py", line 1>:
2 0 LOAD_GLOBAL 0 (a)
2 POP_JUMP_IF_TRUE 12
4 LOAD_GLOBAL 1 (c)
6 POP_JUMP_IF_FALSE 16
8 LOAD_GLOBAL 2 (d)
10 POP_JUMP_IF_FALSE 16
3 >> 12 LOAD_GLOBAL 3 (x)
14 POP_TOP
4 >> 16 LOAD_GLOBAL 4 (b)
18 POP_JUMP_IF_FALSE 24
5 20 LOAD_GLOBAL 5 (y)
22 POP_TOP
>> 24 LOAD_CONST 0 (None)
26 RETURN_VALUE
```
### MWE6:
```python=
def write_double_quoted():
while x:
if (e):
pass
```
#### Closest Solution6:
```python=
def write_double_quoted():
while x:
if (e):
x = x
pass
```
```c=
1 0 LOAD_CONST 0 (<code object write_double_quoted at 0x7f660379be40, file "main.py", line 1>)
2 LOAD_CONST 1 ('write_double_quoted')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (write_double_quoted)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object write_double_quoted at 0x7f660379be40, file "main.py", line 1>:
2 0 SETUP_LOOP 16 (to 18)
>> 2 LOAD_FAST 0 (x)
4 POP_JUMP_IF_FALSE 16
3 6 LOAD_GLOBAL 0 (e)
8 POP_JUMP_IF_FALSE 2
4 10 LOAD_FAST 0 (x)
12 STORE_FAST 0 (x)
5 14 JUMP_ABSOLUTE 2
>> 16 POP_BLOCK
>> 18 LOAD_CONST 0 (None)
20 RETURN_VALUE
```
#### MWE3 data:
Bytecode for MWE:
```c=
1 0 LOAD_CONST 0 (<code object write_double_quoted at 0x7f2ff1a00e40, file "main.py", line 1>)
2 LOAD_CONST 1 ('write_double_quoted')
4 MAKE_FUNCTION 0
6 STORE_NAME 0 (write_double_quoted)
8 LOAD_CONST 2 (None)
10 RETURN_VALUE
Disassembly of <code object write_double_quoted at 0x7f2ff1a00e40, file "main.py", line 1>:
2 0 SETUP_LOOP 8 (to 10)
>> 2 LOAD_GLOBAL 0 (x)
4 POP_JUMP_IF_FALSE 8
3 6 JUMP_ABSOLUTE 2
>> 8 POP_BLOCK
>> 10 LOAD_CONST 0 (None)
12 RETURN_VALUE
```