Valera considers a number beautiful, if it equals $2^{*k*}$ or -$2^{*k*}$ for some integer $*k*$ $(*k* ≥ 0)$. Recently, the math teacher asked Valera to represent number $*n*$ as the sum of beautiful numbers. As Valera is really greedy, he wants to complete the task using as few beautiful numbers as possible.
Help Valera and find, how many numbers he is going to need. In other words, if you look at all decompositions of the number $*n*$ into beautiful summands, you need to find the size of the decomposition which has the fewest summands.
Input
The first line contains string $*s*$ $(1 ≤ |*s*| ≤ 10^{6})$, that is the binary representation of number $*n*$ without leading zeroes $(*n* > 0)$.
Output
Print a single integer — the minimum amount of beautiful numbers that give a total of $*n*$.
Note
In the first sample $*n* = 2$ is a beautiful number.
In the second sample $*n* = 7$ and Valera can decompose it into sum $2^{3} + ( - 2^{0})$.
In the third sample $*n* = 109$ can be decomposed into the sum of four summands as follows: $2^{7} + ( - 2^{4}) + ( - 2^{2}) + 2^{0}$.
样例
10
1
111
2
1101101
4
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。