def parser(init):

    text = nltk.word_tokenize(init)
    posval = 0
    negval = 0
    count = 0
    # remove stop words
    for word in text:
        if word in stopwords.words('english'):
            text.remove(word)
    temp = nltk.pos_tag(text)
    # print(temp)
    for i in range(len(temp)):
        if temp[i][1].find("JJ") != -1:
            JJresult = sr.get_scores(lemmatizer().lemmatize(temp[i][0].lower()))
            # print("adj", end="")
            # print(JJresult)
            posval += JJresult[0]
            negval += JJresult[1]
            count += 1
        elif (temp[i][1].find("NN") != -1 and temp[i][1].find("NNP")):
            # print(lemmatizer().lemmatize(temp[i][0].lower()))
            NNresult = sr.get_scores(lemmatizer().lemmatize(temp[i][0].lower()))
            # print("noun", end="")
            # print(NNresult)
            posval += NNresult[0]
            negval += NNresult[1]
            count+=1
        elif temp[i][1].find("VB") != -1:
            VBresult = sr.get_scores(lemmatizer().lemmatize(temp[i][0].lower()))
            # print("verb", end="")
            # print(VBresult)
            posval += VBresult[0]
            negval += VBresult[1]
            count+=1
        elif temp[i][1].find("RB") != -1:
            RBresult = sr.get_scores(lemmatizer().lemmatize(temp[i][0].lower()))
            # print("adv", end="")
            # print(RBresult)
            posval += RBresult[0]
            negval += RBresult[1]
            count+=1
    if count > 0:
        avgposval = posval/count
        avgnegval = negval/count
    else:
        avgposval=0
        avgnegval=0
    # print(avgposval,avgnegval)
    return avgposval,avgnegval,(1-avgnegval-avgposval)


# raw = input("Enter the string: ")
# parser(raw)
def parser(init):
    # t = treebank.init.parsed_sents('wsj_0001.mrg')[0]
    # t.draw()
    text = nltk.word_tokenize(init)
    posval = 0
    negval = 0
    count = 0
    avgposval = 0
    avgnegval = 0
    # remove stop words
    for word in text:
        if word in stopwords.words('english'):
            text.remove(word)

    temp = nltk.pos_tag(text)
    for i in range(len(temp)):
        if (temp[i][1].find("JJ") != -1) or (temp[i][1].find("NN") != -1 and temp[i][1].find("NNP")) or \
                (temp[i][1].find("VB") != -1 and temp[i][1].find("VBZ")) or (temp[i][1].find("RBS") != -1) \
                or temp[i][1].find("RBR") != -1:
            JJresult = SentiReadernopos.get_scores(temp[i][0].lower())
            if JJresult[0] != 0 or JJresult[1] != 0:
                posval += JJresult[0]
                negval += JJresult[1]
                count += 1
            print(posval, negval)
    if count > 0:
        avgposval += posval/count
        avgnegval += negval/count
    else:
        avgposval = avgnegval = 0

    objval = 1-avgposval-avgnegval

    # the result
    print(avgposval, avgnegval, objval)