if True:
    pass

if True:
    pass
else:
    b = 1

if True:
    pass
elif c:
    d = 1
else:
    e = 1