1. 
/**
* FWP, Ausgew¤hlte Probleme aus dem ACM Programming Contest, SS10
* Problem: 10344 - 23 out of 5
* Link: http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=15&page=show_problem&problem=1285
*
* @author Evgeni Pavlidis
* @version 1.0, 05/20/2010
*
* Method : Backtracking
* Status : Accepted
* Runtime: 1.748
*/


import java.io.*;
import java.util.*;

class Main {

private static int[] a = new int[5];
private static boolean[] available = new boolean[5];

private static StreamTokenizer st = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));

private static int nextInt() throws Exception
{
st.nextToken();
return (int)st.nval;
}

private static boolean isPossible(int value, int step)
{
if(step == 5 && value == 23)
return true;

if(Math.abs(value) > 200)
return false;

for(int i = 0; i < 5; i++)
if(available[i])
{
available[i] = false;

if(isPossible((step == 0 ? 1 : value) * a[i], step+1) ||
isPossible(value + a[i], step+1) ||
isPossible((step == 0 ? a[i] : (value - a[i])), step+1) )
return true;

available[i] = true;
}

return false;
}

public static void main(String...args) throws Exception
{
int abort;

while(true)
{
abort = 0;

for(int i = 0; i < 5; i++)
{
a[i] = nextInt();
available[i] = true;
}

for(int i: a)
abort += Math.abs(i);

if(abort == 0)
break;

System.out.println((isPossible(0, 0)? "Possible" : "Impossible"));
}
}
}