#include <stdio.h>
inline int PositionsSum(int n)
{
int sum = 0;
while (n)
{
sum += n % 10;
n /= 10;
}
return sum;
}
inline int FindMaxPositionsSumMaxNumber(const int Num)
{
if (Num < 10)
return Num;
int res = 0;
int res_sum = 0;
int pos = 10;
for (int i = Num; i >= 10; i /= 10)
{
int t = Num / pos * pos - 1;
int t_sum = PositionsSum(t);
if (t_sum > res_sum)
{
res = t;
res_sum = t_sum;
}
pos *= 10;
}
return PositionsSum(Num) >= res_sum ? Num : res;
}
int main(void)
{
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
int num = 0;
scanf("%d", &num);
printf("%d\n", FindMaxPositionsSumMaxNumber(num));
return 0;
}