import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
	private StringTokenizer st;
	private BufferedReader bf;
	private int n;
//	private int m;
	
	Main() {
		readData();
		
		int h = n/3600;
		int r = n % 3600;
		int m = r / 60;
		int s = r % 60;
		
		
		System.out.println(h + ":" + m + ":" + s);
	}
	
	private void readData() {
		try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	private int nextInt() throws IOException {
		return Integer.parseInt(next());
	}
	
	private String next() throws IOException {
		if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine());
		return st.nextToken();
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m = new Main();
	}

} import java.io.BufferedReader; BufferedReader java.io import java.io.IOException; IOException java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.StringTokenizer; StringTokenizer java.util public class Main {
	private StringTokenizer st;
	private BufferedReader bf;
	private int n;
//	private int m;
	
	Main() {
		readData();
		
		int h = n/3600;
		int r = n % 3600;
		int m = r / 60;
		int s = r % 60;
		
		
		System.out.println(h + ":" + m + ":" + s);
	}
	
	private void readData() {
		try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	private int nextInt() throws IOException {
		return Integer.parseInt(next());
	}
	
	private String next() throws IOException {
		if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine());
		return st.nextToken();
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m = new Main();
	}

} Main private StringTokenizer st; st private BufferedReader bf; bf private int n; n Main() {
		readData();
		
		int h = n/3600;
		int r = n % 3600;
		int m = r / 60;
		int s = r % 60;
		
		
		System.out.println(h + ":" + m + ":" + s);
	} Main {
		readData();
		
		int h = n/3600;
		int r = n % 3600;
		int m = r / 60;
		int s = r % 60;
		
		
		System.out.println(h + ":" + m + ":" + s);
	} readData() readData int h = n/3600; h n/3600 n 3600 int r = n % 3600; r n % 3600 n 3600 int m = r / 60; m r / 60 r 60 int s = r % 60; s r % 60 r 60 System.out.println(h + ":" + m + ":" + s) System.out.println System.out System System.out h + ":" + m + ":" + s ":" m h + ":" + m + ":" + s h ":" m ":" s private void readData() {
		try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	} readData {
		try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	} try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		} Exception e {
			e.printStackTrace();
		} e.printStackTrace() e.printStackTrace e {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} bf = new BufferedReader(new InputStreamReader(System.in)) bf new BufferedReader(new InputStreamReader(System.in)) st = new StringTokenizer(bf.readLine()) st new StringTokenizer(bf.readLine()) n = nextInt() n nextInt() nextInt private int nextInt() throws IOException {
		return Integer.parseInt(next());
	} nextInt {
		return Integer.parseInt(next());
	} return Integer.parseInt(next()); Integer.parseInt(next()) Integer.parseInt Integer next() next private String next() throws IOException {
		if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine());
		return st.nextToken();
	} next {
		if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine());
		return st.nextToken();
	} if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine()); st == null || !st.hasMoreTokens() st == null st null !st.hasMoreTokens() st.hasMoreTokens() st.hasMoreTokens st st = new StringTokenizer(bf.readLine()) st new StringTokenizer(bf.readLine()) return st.nextToken(); st.nextToken() st.nextToken st public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m = new Main();
	} main {
		// TODO Auto-generated method stub
		Main m = new Main();
	} Main m = new Main(); m new Main() String[] args args public class Main {
	private StringTokenizer st;
	private BufferedReader bf;
	private int n;
//	private int m;
	
	Main() {
		readData();
		
		int h = n/3600;
		int r = n % 3600;
		int m = r / 60;
		int s = r % 60;
		
		
		System.out.println(h + ":" + m + ":" + s);
	}
	
	private void readData() {
		try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	private int nextInt() throws IOException {
		return Integer.parseInt(next());
	}
	
	private String next() throws IOException {
		if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine());
		return st.nextToken();
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m = new Main();
	}

} public class Main {
	private StringTokenizer st;
	private BufferedReader bf;
	private int n;
//	private int m;
	
	Main() {
		readData();
		
		int h = n/3600;
		int r = n % 3600;
		int m = r / 60;
		int s = r % 60;
		
		
		System.out.println(h + ":" + m + ":" + s);
	}
	
	private void readData() {
		try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	private int nextInt() throws IOException {
		return Integer.parseInt(next());
	}
	
	private String next() throws IOException {
		if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine());
		return st.nextToken();
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m = new Main();
	}

} Main
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
	private StringTokenizer st;
	private BufferedReader bf;
	private int n;
//	private int m;
	
	Main() {
		readData();
		
		int h = n/3600;
		int r = n % 3600;
		int m = r / 60;
		int s = r % 60;
		
		
		System.out.println(h + ":" + m + ":" + s);
	}
	
	private void readData() {
		try {
			bf = new BufferedReader(new InputStreamReader(System.in));
			st = new StringTokenizer(bf.readLine());
			n = nextInt();
//			m = nextInt();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	private int nextInt() throws IOException {
		return Integer.parseInt(next());
	}
	
	private String next() throws IOException {
		if (st == null || !st.hasMoreTokens())
			st = new StringTokenizer(bf.readLine());
		return st.nextToken();
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m = new Main();
	}

}