// Задача "Количество делителей"
// 10-ая Интернет-олимпиада сезона 2006-2007, базовый уровень
// Автор задачи: Федор Царев, tsarev@rain.ifmo.ru
// Автор решения: Федор Царев, tsarev@rain.ifmo.ru

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

public class divcount_ft implements Runnable {

	private Scanner in;
	private PrintWriter out;

	private final static int MAXN = 2000;

	private void myAssert(boolean e, String mes) {
		if (!e) {
			throw new Error("Assertion failure!!! " + mes);
		}
	}

	private void solve() throws IOException {
		long n = in.nextLong();
		myAssert(1 <= n && n <= (long) 1e18, "n must be between 1 and 1e18");

		ArrayList<Integer> factorCount = new ArrayList<Integer>();
		for (int i = 2; i <= 1000; i++) {
			if (n % i == 0) {
				int cnt = 0;
				while (n % i == 0) {
					cnt++;
					n /= i;
				}
				factorCount.add(cnt);
			}	
		}
		myAssert(n == 1, "n has prime factors which are more than 1000");
		long ans = 1;
		for (Integer i : factorCount) {
			ans *= (i + 1);
		}
		out.println(ans);
	}

	public void run() {
		try {
			solve();
		} catch (Exception e) {
			e.printStackTrace();
			System.exit(1);
		} finally {
			out.close();
		}
	}
	
	private divcount_ft(String name) {
		try {
			in = new Scanner(new File(name + ".in"));
			out = new PrintWriter(new FileWriter(name + ".out"));	
		} catch (IOException e) {
			e.printStackTrace();
			System.exit(239);
		}
	}

	public static void main(String[] args) {
		(new Thread(new divcount_ft("divcount"))).start();
	}
}
