You are fishing with polar bears Alice and Bob. While waiting for the fish to bite, the polar bears get bored. They come up with a game. First Alice and Bob each writes a 01-string (strings that only contain character "0" and "1") *a* and *b*. Then you try to turn *a* into *b* using two types of operations:
 -  Write *parity*(*a*) to the end of *a*. For example, <img align="middle" class="tex-formula" src="https://espresso.codeforces.com/2489b4bd10b8f67bed8ee4614ff21d963da20895.png" style="max-width: 100.0%;max-height: 100.0%;"/>. -  Remove the first character of *a*. For example, <img align="middle" class="tex-formula" src="https://espresso.codeforces.com/073a30771e84caf65e9a79493bf290f14d315cbe.png" style="max-width: 100.0%;max-height: 100.0%;"/>. You cannot perform this operation if *a* is empty. 
You can use as many operations as you want. The problem is, is it possible to turn *a* into *b*?

The *parity* of a 01-string is 1 if there is an odd number of "1"s in the string, and 0 otherwise.
The first line contains the string *a* and the second line contains the string *b* (1 ≤ |*a*|, |*b*| ≤ 1000). Both strings contain only the characters "0" and "1". Here |*x*| denotes the length of the string *x*.


a = input()
b = input()

count_one = a.count('1')
count_one_b = b.count('1')
stack = [(count_one, a)]
visited = set()
possible = False
while stack:
    count, s = stack.pop()
    # print(count, s)
    key = count % 2, s
    if key in visited:
        continue
    if abs(count_one_b - count) > 1:
        continue

    if count % 2 == 0:
        if count_one_b > count:
            continue

    visited.add(key)

    if s == b:
        possible = True
        break

    if count % 2 == 1:
        stack.append((count+1, s+"1"))
    else:
        stack.append((count, s+"0"))

    if len(s):
        if s[0] == '1':
            stack.append((count-1, s[1:]))
        else:
            stack.append((count, s[1:]))


if possible:
    print("YES")
else:
    print("NO")
