import sequtils, strutils, algorithm, math, future, sets, tables, hashes
proc `ceilDiv`*[T](x, y: T): T = x div y + ord(x mod y != 0)
proc `//=`*(x: var SomeInteger; y: SomeInteger) = x = x div y
proc `%=`*(x: var SomeInteger; y: SomeInteger) = x = x mod y

var
    S = stdin.readLine
    tmp:string = ""
    d = {0:'k', 1:'e', 2:'y', 3:'e', 4:'n', 5:'c', 6:'e'}.newTable
    idx = 0
    c:string = ""
    t = 0
    flag = false
    p = true
    n = false
for i in 0..S.len-1:
    if S[i] == d[idx]:
        tmp.add S[i]
        idx += 1
        n = true
    else:
        if tmp.len == 0:
            continue
        n = false
        if c.len == 0:
            t += 1
        
        elif t > 0 and p:
            idx = 0
            c = ""
            tmp = ""
        c.add S[i]
    p = n
    if tmp == "keyence":
        flag = true
if flag:
    echo "YES"
else:
    echo "NO"