import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int y = sc.nextInt();
		y= y/1000;
		int a=0;
		int b=0;
		int c=0;
		int flag=0;
		int result=0;
		for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		}
			if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			}
			System.out.println(a+" "+b+" "+c);
	}
} import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int y = sc.nextInt();
		y= y/1000;
		int a=0;
		int b=0;
		int c=0;
		int flag=0;
		int result=0;
		for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		}
			if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			}
			System.out.println(a+" "+b+" "+c);
	}
} Main public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int y = sc.nextInt();
		y= y/1000;
		int a=0;
		int b=0;
		int c=0;
		int flag=0;
		int result=0;
		for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		}
			if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			}
			System.out.println(a+" "+b+" "+c);
	} main {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int y = sc.nextInt();
		y= y/1000;
		int a=0;
		int b=0;
		int c=0;
		int flag=0;
		int result=0;
		for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		}
			if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			}
			System.out.println(a+" "+b+" "+c);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc int y = sc.nextInt(); y sc.nextInt() sc.nextInt sc y= y/1000 y y/1000 y 1000 int a=0; a 0 int b=0; b 0 int c=0; c 0 int flag=0; flag 0 int result=0; result 0 for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		} a=y/10; a=y/10 a y/10 y 10 a>=0 a 0 a-- a-- a {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		} {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		} for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			} b=y/5; b=y/5 b y/5 y 5 b>=0 b 0 b-- b-- b {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			} {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			} c=n-a-b c n-a-b n-a-b n a b if(c<0) {
					continue;
				} c<0 c 0 {
					continue;
				} continue; result = 10*a + 5*b +c result 10*a + 5*b +c 10*a + 5*b +c 10*a 10 a 5*b 5 b c if(result==y) {
					flag=1;
					break;
				} result==y result y {
					flag=1;
					break;
				} flag=1 flag 1 break; if(flag==1) {
				break;
			} flag==1 flag 1 {
				break;
			} break; if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			} flag==0 flag 0 {
				a=-1;
				b=-1;
				c=-1;
			} a=-1 a -1 1 b=-1 b -1 1 c=-1 c -1 1 System.out.println(a+" "+b+" "+c) System.out.println System.out System System.out a+" "+b+" "+c " " b a+" "+b+" "+c a " " b " " c String[] args args public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int y = sc.nextInt();
		y= y/1000;
		int a=0;
		int b=0;
		int c=0;
		int flag=0;
		int result=0;
		for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		}
			if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			}
			System.out.println(a+" "+b+" "+c);
	}
} public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int y = sc.nextInt();
		y= y/1000;
		int a=0;
		int b=0;
		int c=0;
		int flag=0;
		int result=0;
		for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		}
			if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			}
			System.out.println(a+" "+b+" "+c);
	}
} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int y = sc.nextInt();
		y= y/1000;
		int a=0;
		int b=0;
		int c=0;
		int flag=0;
		int result=0;
		for(a=y/10; a>=0; a--) {
			for(b=y/5; b>=0; b--) {
				c=n-a-b;
				if(c<0) {
					continue;
				}
				result = 10*a + 5*b +c;
				if(result==y) {
					flag=1;
					break;
				}
			}
			if(flag==1) {
				break;
			}
		}
			if(flag==0) {
				a=-1;
				b=-1;
				c=-1;
			}
			System.out.println(a+" "+b+" "+c);
	}
}
