Determine if an N-sided polygon (not necessarily convex) with sides of length L_1, L_2, ..., L_N can be drawn in a two-dimensional plane.

You can use the following theorem:

Theorem: an N-sided polygon satisfying the condition can be drawn if and only if the longest side is strictly shorter than the sum of the lengths of the other N-1 sides.

Constraints

* All values in input are integers.
* 3 \leq N \leq 10
* 1 \leq L_i \leq 100

Input

Input is given from Standard Input in the following format:


N
L_1 L_2 ... L_N


Output

If an N-sided polygon satisfying the condition can be drawn, print `Yes`; otherwise, print `No`.

Examples

Input

4
3 8 5 1


Output

Yes


Input

4
3 8 4 1


Output

No


Input

10
1 8 10 5 8 12 34 100 11 3


Output

No
import sys
from collections import deque
import copy
import math
def get_read_func(fileobject):
    if fileobject == None :
        return raw_input
    else:
        return fileobject.readline

def main():
    if len(sys.argv) > 1:
        f = open(sys.argv[1])
    else:
        f = None
    read_func = get_read_func(f);
    input_raw = read_func().strip().split()
    [N] = [long(input_raw[0])]
    input_raw = read_func().strip().split()
    L = []
    for i in range(N):
        L.append(long(input_raw[i]))

    L.sort()

    lmax = L.pop()

    if lmax < sum(L):
        print "Yes"
    else:
        print "No"


if __name__ == '__main__':
    main()
