n,l=list(map(int,input().split()))

a=list(map(int,input().split()))

failflag=1

for i in range(n-1):

  if a[i]+a[i+1]>=l:

    failflag=0

    k=i

    break

if failflag==1:

  print('Impossible')

else:

  print('Possible')

  for i in range(1,k+1):

    print(i)

  for i in range(n-1-k):

    print((n-1-i))
import sys

n,x=list(map(int,input().split()))

a=list(map(int,input().split()))

k=-1

for i in range(n-1):

  if a[i]+a[i+1]>=x:

    k=i

    break

  if i==n-2:

    print('Impossible')

    sys.exit()

print('Possible')

for i in range(k):

  print((i+1))

for i in range(n-2,k,-1):

  print((i+1))

print((k+1))
n, l = list(map(int, input().split()))
a = list(map(int, input().split()))
failflag = 1
for i in range(n - 1):
    if a[i] + a[i + 1] >= l:
        failflag = 0
        k = i
        break
if failflag == 1:
    print("Impossible")
else:
    print("Possible")
    for i in range(1, k + 1):
        print(i)
    for i in range(n - 1 - k):
        print((n - 1 - i))

import sys

n, x = list(map(int, input().split()))
a = list(map(int, input().split()))
k = -1
for i in range(n - 1):
    if a[i] + a[i + 1] >= x:
        k = i
        break
    if i == n - 2:
        print("Impossible")
        sys.exit()
print("Possible")
for i in range(k):
    print((i + 1))
for i in range(n - 2, k, -1):
    print((i + 1))
print((k + 1))

-n, l = list(map(int, input().split())) +import sys + +n, x = list(map(int, input().split())) -failflag = 1 +k = -1 -    if a[i] + a[i + 1] >= l: -        failflag = 0 +    if a[i] + a[i + 1] >= x: -if failflag == 1: -    print("Impossible") -else: -    print("Possible") -    for i in range(1, k + 1): -        print(i) -    for i in range(n - 1 - k): -        print((n - 1 - i)) +    if i == n - 2: +        print("Impossible") +        sys.exit() +print("Possible") +for i in range(k): +    print((i + 1)) +for i in range(n - 2, k, -1): +    print((i + 1)) +print((k + 1))