x:int = 1
y:int = 2
z:int = 3

def foo(x:int) -> object:
    y:int = 4  # OK
    x:int = 5  # Duplicate declaration
    global z   # OK
    global y   # Duplicate declaration

    def x() -> int: # Duplicate declaration
        return 0

    pass

def bar(x:int, x:int) -> int: # Duplicate params
    return x


foo(1)

