import sys

h, w = list(map(int, input().split()))

i = 0

pos = 0

while h > i:

    s = eval(input())

    l = s.find('#')

    r = s.rfind('#')

    if (l == pos and r >= pos):

        pos = r

        i += 1

    else:

        print('Impossible')

        sys.exit()

print('Possible')

def main():

    H, W = list(map(int, input().split()))



    l = H + W - 1

    sharp = 0

    i = 0

    while i < H:

        A = str(eval(input()))

        sharp += A.count('#')

        i += 1



    if l == sharp:

        print('Possible')

    else:

        print('Impossible')



main()

import sys

h, w = list(map(int, input().split()))
i = 0
pos = 0
while h > i:
    s = eval(input())
    l = s.find("#")
    r = s.rfind("#")
    if l == pos and r >= pos:
        pos = r
        i += 1
    else:
        print("Impossible")
        sys.exit()
print("Possible")

def main():
    H, W = list(map(int, input().split()))
    l = H + W - 1
    sharp = 0
    i = 0
    while i < H:
        A = str(eval(input()))
        sharp += A.count("#")
        i += 1
    if l == sharp:
        print("Possible")
    else:
        print("Impossible")


main()

-import sys - -h, w = list(map(int, input().split())) -i = 0 -pos = 0 -while h > i: -    s = eval(input()) -    l = s.find("#") -    r = s.rfind("#") -    if l == pos and r >= pos: -        pos = r +def main(): +    H, W = list(map(int, input().split())) +    l = H + W - 1 +    sharp = 0 +    i = 0 +    while i < H: +        A = str(eval(input())) +        sharp += A.count("#") +    if l == sharp: +        print("Possible") -        sys.exit() -print("Possible") + + +main()