import java.util.Scanner;

public class Main {

	public static void main(String[] args){
		// TODO ABC_085_C
		Scanner sc = new Scanner(System.in);
		// 整数の入力
		int N = sc.nextInt();
		int Y = sc.nextInt();
		// Scannerクラスのインスタンスをクローズ
		sc.close();

		int maiX=0, maiY=0, maiZ=0;
		int kaiX=-1, kaiY=-1, kaiZ=-1;


		for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		}

		System.out.println(kaiX + " " + kaiY + " " + kaiZ);
	}
} import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args){
		// TODO ABC_085_C
		Scanner sc = new Scanner(System.in);
		// 整数の入力
		int N = sc.nextInt();
		int Y = sc.nextInt();
		// Scannerクラスのインスタンスをクローズ
		sc.close();

		int maiX=0, maiY=0, maiZ=0;
		int kaiX=-1, kaiY=-1, kaiZ=-1;


		for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		}

		System.out.println(kaiX + " " + kaiY + " " + kaiZ);
	}
} Main public static void main(String[] args){
		// TODO ABC_085_C
		Scanner sc = new Scanner(System.in);
		// 整数の入力
		int N = sc.nextInt();
		int Y = sc.nextInt();
		// Scannerクラスのインスタンスをクローズ
		sc.close();

		int maiX=0, maiY=0, maiZ=0;
		int kaiX=-1, kaiY=-1, kaiZ=-1;


		for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		}

		System.out.println(kaiX + " " + kaiY + " " + kaiZ);
	} main {
		// TODO ABC_085_C
		Scanner sc = new Scanner(System.in);
		// 整数の入力
		int N = sc.nextInt();
		int Y = sc.nextInt();
		// Scannerクラスのインスタンスをクローズ
		sc.close();

		int maiX=0, maiY=0, maiZ=0;
		int kaiX=-1, kaiY=-1, kaiZ=-1;


		for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		}

		System.out.println(kaiX + " " + kaiY + " " + kaiZ);
	} 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 sc.close() sc.close sc int maiX=0 maiX 0 maiY=0 maiY 0 maiZ=0; maiZ 0 int kaiX=-1 kaiX -1 1 kaiY=-1 kaiY -1 1 kaiZ=-1; kaiZ -1 1 for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		} maiX = 0; maiX = 0 maiX 0 maiX <= N maiX N maiX++ maiX++ maiX {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		} {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		} if(kaiX != -1) {
				break;
			} kaiX != -1 kaiX -1 1 {
				break;
			} break; if(maiX * 10000 > Y) {
				break;
			} maiX * 10000 > Y maiX * 10000 maiX 10000 Y {
				break;
			} break; for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			} maiZ = 0; maiZ = 0 maiZ 0 maiX + maiZ <= N maiX + maiZ maiX maiZ N maiZ++ maiZ++ maiZ {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			} {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			} maiY = N - (maiX + maiZ) maiY N - (maiX + maiZ) N (maiX + maiZ) maiX maiZ if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				} maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y maiX * 10000 + maiY * 5000 + maiZ * 1000 maiX * 10000 + maiY * 5000 + maiZ * 1000 maiX * 10000 maiX 10000 maiY * 5000 maiY 5000 maiZ * 1000 maiZ 1000 Y {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				} kaiX = maiX kaiX maiX kaiY = maiY kaiY maiY kaiZ = maiZ kaiZ maiZ break; System.out.println(kaiX + " " + kaiY + " " + kaiZ) System.out.println System.out System System.out kaiX + " " + kaiY + " " + kaiZ " " kaiY kaiX + " " + kaiY + " " + kaiZ kaiX " " kaiY " " kaiZ String[] args args public class Main {

	public static void main(String[] args){
		// TODO ABC_085_C
		Scanner sc = new Scanner(System.in);
		// 整数の入力
		int N = sc.nextInt();
		int Y = sc.nextInt();
		// Scannerクラスのインスタンスをクローズ
		sc.close();

		int maiX=0, maiY=0, maiZ=0;
		int kaiX=-1, kaiY=-1, kaiZ=-1;


		for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		}

		System.out.println(kaiX + " " + kaiY + " " + kaiZ);
	}
} public class Main {

	public static void main(String[] args){
		// TODO ABC_085_C
		Scanner sc = new Scanner(System.in);
		// 整数の入力
		int N = sc.nextInt();
		int Y = sc.nextInt();
		// Scannerクラスのインスタンスをクローズ
		sc.close();

		int maiX=0, maiY=0, maiZ=0;
		int kaiX=-1, kaiY=-1, kaiZ=-1;


		for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		}

		System.out.println(kaiX + " " + kaiY + " " + kaiZ);
	}
} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args){
		// TODO ABC_085_C
		Scanner sc = new Scanner(System.in);
		// 整数の入力
		int N = sc.nextInt();
		int Y = sc.nextInt();
		// Scannerクラスのインスタンスをクローズ
		sc.close();

		int maiX=0, maiY=0, maiZ=0;
		int kaiX=-1, kaiY=-1, kaiZ=-1;


		for(maiX = 0; maiX <= N; maiX++) {
			if(kaiX != -1) {
				break;
			}
			if(maiX * 10000 > Y) {
				break;
			}

			for(maiZ = 0; maiX + maiZ <= N; maiZ++) {

				maiY = N - (maiX + maiZ);
				if(maiX * 10000 + maiY * 5000 + maiZ * 1000 == Y) {
					kaiX = maiX;
					kaiY = maiY;
					kaiZ = maiZ;
					break;
				}
			}
		}

		System.out.println(kaiX + " " + kaiY + " " + kaiZ);
	}
}
