//using AtCoder;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using static System.Console;
using static System.Linq.Enumerable;
using static System.Math;
public class Program
{
public static void Main(string[] args)
{
//SourceExpander.Expander.Expand();
var N = long.Parse(ReadLine());
var ans = 0L;
for (int m = 1; m <= Sqrt(N - 1); m++)
{
if (N % m == 0)
ans += N / m - 1;
}
WriteLine(ans);
}
}
static class ArrayDeconstructExtensions
{
public static void Deconstruct<T>(this T[] a, out T i1, out T i2) => (i1, i2) = (a[0], a[1]);
public static void Deconstruct<T>(this T[] a, out T i1, out T i2, out T i3) => (i1, i2, i3) = (a[0], a[1], a[2]);
public static void Deconstruct<T>(this T[] a, out T i1, out T i2, out T i3, out T i4) => (i1, i2, i3, i4) = (a[0], a[1], a[2], a[3]);
public static void Deconstruct<T>(this T[] a, out T i1, out T i2, out T i3, out T i4, out T i5) => (i1, i2, i3, i4, i5) = (a[0], a[1], a[2], a[3], a[4]);
}