class Program
{
static void Main(string[] args)
{
int N = int.Parse(Console.ReadLine());
Queue<int> myQueue = new Queue<int>();
for (int i = 1; i <= N; i++)
{
myQueue.Enqueue(i);
}
while (myQueue.Count > 1)
{
myQueue.Dequeue();
myQueue.Enqueue(myQueue.Dequeue());
}
Console.WriteLine(myQueue.Peek());
}
}
from collections import deque
N = int(input())
myQueue = deque()
for i in range(1,N+1):
myQueue.append(i)
while len(myQueue) >1:
myQueue.popleft()
myQueue.append(myQueue.popleft())
print(myQueue[0])