define cho_requirements = {
    "category upper undergarment": 5,
    "category lower undergarment": 5,
    "category piercings & tattoos": 16,
    "touch head": 4,
    "touch breasts": 10, #Start of Gryffindor match leadup tier
    "touch vagina": 15, #Highest level of Gryffindor match leadup tier
    "unequip panties": 15,
    "unequip bra": 15,
    "unequip top": 4,
    "unequip bottom": 4,
    }

define cho_responses = {
    "category_fail": "cho_reaction_category_fail",
    "equip": "cho_reaction_equip",
    "equip_fail": "cho_reaction_equip_fail",
    "unequip": "cho_reaction_unequip",
    "unequip_fail": "cho_reaction_unequip_fail",
    "touch": "cho_reaction_touch",
    "touch_fail": "cho_reaction_touch_fail",
    "equip_outfit": "cho_reaction_equip_outfit",
    "equip_outfit_fail": "cho_reaction_equip_outfit_fail",
    "blacklist": "cho_reaction_blacklist",
    "fallback": "cho_reaction_fallback",
}

label cho_reaction_category_fail(category):

    if category == "upper undergarment":
        $ random_number = renpy.random.randint(1, 3)
        if random_number == 1:
            cho "You want to pick my underwear?" ("disgust", "narrow", "angry", "mid")
            cho "I don't think so." ("open", "narrow", "angry", "R")
        elif random_number == 2:
            cho "Unless we're doing exercises I don't see why you want me to change my underwear..." ("disgust", "base", "angry", "R")
        elif random_number == 3:
            cho "I'm perfectly fine with the underwear I'm already wearing thank you..." ("base", "base", "base", "mid")
    elif category == "lower undergarment":
        $ random_number = renpy.random.randint(1, 3)
        if random_number == 1:
            cho "My underwear?" ("disgust", "base", "raised", "mid")
            cho "Why do you want me to change them exactly?" ("angry", "narrow", "angry", "mid")
        elif random_number == 2:
            cho "*Err*... You want me to do what?" ("disgust", "base", "angry", "mid", cheeks="blush")
        elif random_number == 3:
            cho "Are we doing something that requires me to change my underwear?" ("annoyed", "narrow", "raised", "mid")
            gen "I just thought I could pick some for you to wear." ("base", xpos="far_left", ypos="head")
            cho "Well... You thought wrong." ("upset", "narrow", "angry", "mid")
    elif category == "piercings & tattoos":
        if cho_whoring < 4:
            cho "Yeah, that's not happening..." ("annoyed", "narrow", "angry", "R")
        elif cho_whoring < 10:
            cho "No thank you..." ("annoyed", "narrow", "base", "mid")
        else: # < 16
            cho "My body is already perfect without such things..." ("smile", "closed", "base", "mid")

    return

label cho_reaction_touch(what):
    if what == "head":
        $ mouse_headpat()

        if cho_whoring < 10: #Pre Slytherin match (after hufflepuff match)
            if random_number == 1:
                cho "Are you measuring my height or something?" ("annoyed", "narrow", "base", "mid")
            elif random_number == 2:
                cho "Is this supposed to encourage me?" ("disgust", "closed", "base", "mid")
            elif random_number == 3:
                cho "You'd usually only pet a dog when they do well with their training you know that right?" ("open", "narrow", "raised", "mid")
            elif random_number == 4:
                cho "What next? A treat?" ("soft", "narrow", "base", "R")
        elif cho_whoring < 16: # Pre Gryffindor match (after Slytherin match)
            $ random_number = renpy.random.randint(1, 3)
            if random_number == 1:
                cho "*Hmm*... Well I suppose this is fine... You did help me beat those Slytherins after all." ("soft", "closed", "base", "mid", cheeks="blush")
            elif random_number == 2:
                cho "Thank you, but don't we have other things to focus on?" ("open", "narrow", "base", "R", cheeks="blush")
            elif random_number == 3:
                cho "Yes, I do believe I've deserved some praise..." ("base", "base", "base", "mid", cheeks="blush")
                cho "Although petting is a bit out there as a reward..." ("soft", "base", "base", "R", cheeks="blush")
        elif cho_whoring < 22: #Post Gryffindor match (start of tier)
            $ random_number = renpy.random.randint(1, 3)
            if random_number == 1:
                cho "I could get used to this..." ("base", "narrow", "base", "R", cheeks="blush")
            elif random_number == 2:
                cho "Thank you [cho_genie_name]..." ("open", "narrow", "base", "down", cheeks="blush")
            elif random_number == 3:
                cho "Is this supposed to be my reward, [cho_genie_name]?" ("soft", "narrow", "base", "mid", cheeks="blush")
                cho "I was expecting more coming from you..." ("open", "narrow", "base", "downR", cheeks="blush")
        else: #22+ #Post Gryffindor match (end of tier)
            $ random_number = renpy.random.randint(1, 3)
            if random_number == 1:
                cho "Are you sure there isn't anywhere else you could distribute that praise?" ("smile", "narrow", "base", "mid", cheeks="blush")
            elif random_number == 2:
                cho "I'm glad you're so proud of me [cho_genie_name]..." ("base", "narrow", "base", "mid", cheeks="blush")
            elif random_number == 3:
                cho "*Mmm*..." ("horny", "closed", "base", "mid", cheeks="blush")


    elif what == "breasts":
        $ mouse_heart()

        if cho_whoring < 16: # Before Gryffindor match
            $ random_number = renpy.random.randint(1, 4)
            if random_number == 1:
                cho "Kissing them for good luck are we?" ("smile", "narrow", "base", "mid", cheeks="blush")
            elif random_number == 2:
                cho "*Mmm*..." ("horny", "closed", "base", "mid")
                cho "..." ("disgust", "narrow", "base", "mid", cheeks="blush")
            elif random_number == 3:
                cho "My Quaffles are quite perfect aren't they?" ("grin", "narrow", "base", "mid", cheeks="blush")
                cho "*Ugh*... Why did I just call them that..." ("disgust", "narrow", "base", "downR", cheeks="heavy_blush")
            elif random_number == 4:
                cho "*Mmm*... Feel how firm those bad girls are?" ("base", "narrow", "base", "mid", cheeks="blush")
                cho "That's the reward from years of hard training..." ("grin", "closed", "base", "mid", cheeks="blush")
        else:
            if random_number == 1:
                cho "*Mmm*..." ("horny", "closed", "base", "mid")
            elif random_number == 2:
                cho "Thank you [cho_genie_name]..." ("soft", "narrow", "base", "mid", cheeks="blush")
            elif random_number == 3:
                cho "Glad you appreciate them as much as I do..." ("smile", "wink", "base", "mid", cheeks="blush")

    elif what == "vagina":
        $ mouse_heart()

        if cho_whoring < 16: #Before Gryffindor match
            $ random_number = renpy.random.randint(1, 3)
            if random_number == 1:
                cho "*Hmm*... I can appreciate a man who goes for what he wants no matter what..." ("base", "narrow", "base", "mid", cheeks="blush")
            elif random_number == 2:
                cho "Such speed... Fancy yourself a seeker do you?" ("smile", "narrow", "base", "mid", cheeks="blush")
            elif random_number == 3:
                cho "*Hmm*... Surely such a move must count as a foul..." ("smile", "wink", "base", "mid", cheeks="blush")
        else:
            $ random_number = renpy.random.randint(1, 2)
            if random_number == 1:
                cho "Found one of the goal posts did you?" ("base", "narrow", "base", "mid", cheeks="blush")
                cho "There's two more you know..." ("smile", "wink", "base", "mid", cheeks="blush")
            elif random_number == 2:
                cho "Careful or I might lock my thighs around your neck and keep you there..." ("soft", "narrow", "base", "mid", cheeks="blush")


    return

label cho_reaction_touch_fail(what):
    if what == "head":
        $ mouse_slap()

        $ random_number = renpy.random.randint(1, 4)
        if random_number == 1:
            cho "Don't touch my hair..." ("clench", "base", "base", "mid")
        elif random_number == 2:
            cho "Bad [cho_genie_name]..." ("annoyed", "base", "angry", "mid")
        elif random_number == 3:
            cho "No touch!" ("open", "closed", "angry", "mid")
        elif random_number == 4:
            cho "Don't...{w=0.4} Pet...{w=0.4} me..." ("soft", "narrow", "angry", "mid")

    elif what == "breasts":
        $ mouse_slap()

        $ random_number = renpy.random.randint(1, 4)
        if random_number == 1:
            cho "[cho_genie_name]?!" ("mad", "base", "angry", "mid")
            cho "This isn't a part of our training..." ("clench", "base", "angry", "mid")
        elif random_number == 2:
            cho "Nice try..." ("smile", "narrow", "angry", "mid")
        elif random_number == 3:
            cho "What are you doing?!" ("disgust", "wide", "base", "mid")
        elif random_number == 4:
            cho "Too slow..." ("crooked_smile", "narrow", "angry", "mid")

    elif what == "vagina":
        $ mouse_slap()

        $ random_number = renpy.random.randint(1, 4)
        if random_number == 1:
            cho "Hands where I can see them!" ("angry", "base", "angry", "mid")
        elif random_number == 2:
            cho "You'd have to be a lot faster to get even close to getting away with that..." ("crooked_smile", "narrow", "angry", "mid")
        elif random_number ==3:
            cho "Nice try..." ("soft", "narrow", "angry", "mid")
        elif random_number ==4:
            cho "No foul plays, [cho_genie_name]..." ("angry", "narrow", "angry", "mid")

    return

label cho_reaction_equip(item):
    ### Add specific clothing reactions here.
    # if item == <DollCloth Object>:
    #     cho "This <specific item description> looks awesome! I'll wear this <specific item description> with pride!"
    return

label cho_reaction_equip_fail(item):
    ### Add specific clothing reactions here.
    # if item == <DollCloth Object>:
    #     cho "I won't wear <specific item description> because!"
    # else:
    # <indent code below to be used as a fallback>

    $ random_number = renpy.random.randint(1, 4)
    if random_number == 1:
        cho "There's no way I would wear that." ("upset", "narrow", "angry", "mid")
    elif random_number == 2:
        cho "Put it on yourself..." ("open", "base", "angry", "mid")
        gen "I don't think it would fit." ("base", xpos="far_left", ypos="head")
        cho "Well, tough luck..." ("annoyed", "narrow", "angry", "R")
    elif random_number == 3:
        cho "I am not wearing that..." ("upset", "closed", "base", "mid")
    elif random_number == 4:
        cho "Ask Granger to wear it why don't you..." ("open", "closed", "angry", "mid")
        gen "It's made for your size." ("base", xpos="far_left", ypos="head")
        cho "What is that supposed to mean?" ("soft", "base", "angry", "mid")
        gen "..." ("angry", xpos="far_left", ypos="head")

    return

label cho_reaction_unequip(item):
    ### Example
    # if item.type == "panties":
    #    if cho_whoring > 15:
    #        cho "You want to see my snatch?"
    #        cho "You got it [genie_name]!"
    #
    return

label cho_reaction_unequip_fail(item):
    if item.type == "panties":

        $ random_number = renpy.random.randint(1, 3)
        if random_number == 1:
            cho "You want me to take off my underwear?" ("upset", "narrow", "angry", "mid")
            cho "How is that supposed to help with my training?" ("open", "closed", "angry", "mid", cheeks="blush")
        elif random_number == 2:
            cho "You want me to stand here without underwear?" ("disgust", "narrow", "base", "mid")
            cho "Yeah, in your dreams [cho_genie_name]..." ("annoyed", "narrow", "angry", "R")
        elif random_number == 3:
            cho "Take your own underwear off why don't you..." ("disgust", "narrow", "angry", "mid")
            gen "What's to say I'm wearing any?" ("base", xpos="far_left", ypos="head")
            cho "..." ("angry", "closed", "angry", "mid")

    elif item.type == "bra":
        $ random_number = renpy.random.randint(1, 2)
        if random_number == 1:
            cho "I bet that Gryffindor cow happily stands here with her tits out but that doesn't mean I will..." ("disgust", "base", "angry", "R", cheeks="blush")
        elif random_number == 2:
            cho "You want me to flash you my tits?" ("angry", "wide", "base", "mid", cheeks="blush")
            gen "I want you to take it off and keep it off..." ("base", xpos="far_left", ypos="head")
            cho "No way!" ("clench", "narrow", "angry", "mid")

    elif item.type == "top":
        cho "I'm sorry if you don't like my choice of clothes, [cho_genie_name]..." ("annoyed", "narrow", "angry", "R")

    elif item.type == "bottom":
        cho "I'm sorry if you don't like my choice of clothes, [cho_genie_name]..." ("open", "narrow", "angry", "downR")
    return

label cho_reaction_equip_outfit(item):
    ### Add specific Outfit reactions here.

    ########################
    ## Default Schoolgirl ##
    ########################
    if item == cho_outfit_default:
        gen "Could you put on your normal school uniform?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "Sure." ("soft", "base", "base", "mid")
            cho "Let me just go change real quick." ("open", "base", "base", "R")
        elif cho_whoring < 10:
            cho "My regular school uniform?" ("open", "narrow", "raised", "mid")
            gen "That's the one." ("base", xpos="far_left", ypos="head")
            cho "Alright, give me a moment..." ("soft", "narrow", "base", "mid")
        elif cho_whoring < 16:
            cho "With the vest and all?" ("soft", "narrow", "raised", "mid")
            gen "Yep." ("base", xpos="far_left", ypos="head")
            cho "*Hmm*...{w=0.3} Is this some sort of trick?" ("annoyed", "narrow", "raised", "mid")
            gen "Nope, I just like keeping up the traditions." ("base", xpos="far_left", ypos="head")
            cho "Yeah right..." ("open", "narrow", "base", "R")
            gen "..." ("base", xpos="far_left", ypos="head")
            cho "Oh, You were serious! Okay then..." ("disgust", "narrow", "base", "mid")
        else: #16+
            cho "*Hmm*...{w=0.3} It's a bit constricting..." ("annoyed", "narrow", "base", "down")
            gen "In what way?" ("base", xpos="far_left", ypos="head")
            cho "You know...{w=0.3} The tie and all..." ("soft", "narrow", "base", "mid")
            gen "I don't get it..." ("base", xpos="far_left", ypos="head")
            cho "Never mind..." ("open", "narrow", "base", "down", cheeks="blush")

    ########################
    ## Cheerleader ##
    ########################
    elif item == cho_outfit_cheerleader: #Req 10 whoring
        gen "Could you wear the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 16:
            cho "The cheerleader outfit..." ("soft", "narrow", "base", "down")
            cho "You want me to cheer for myself or what?" ("angry", "narrow", "raised", "mid")
            gen "*Heh-Heh*...{w=0.2} Yeah, that sounds funny..." ("grin", xpos="far_left", ypos="head")
            cho "Fine..." ("disgust", "narrow", "base", "mid")
        else: # 16+
            cho "The cheerleader outfit?" ("open", "narrow", "base", "mid")
            cho "But isn't that a bit below me?" ("annoyed", "base", "base", "mid")
            gen "Blow me? Yes please!" ("grin", xpos="far_left", ypos="head")
            cho "...{w} Fine." ("disgust", "narrow", "base", "mid")
    ##################
    ## Misty Outfit ##
    ##################
    elif item == cho_outfit_misty: #Req 15 (no bra)
        gen "Put on the misty cosplay for me will you?" ("base", xpos="far_left", ypos="head")
        cho "*Hmm*... A cosplay..." ("open", "base", "base", "down")
        gen "Yup, gotta catch them all." ("base", xpos="far_left", ypos="head")
        cho "Catch all of what?" ("soft", "base", "raised", "mid")
        gen "The pokemens." ("base", xpos="far_left", ypos="head")
        cho "*Huh*?" ("annoyed", "narrow", "raised", "mid")
        gen "And the pokewomens..." ("base", xpos="far_left", ypos="head")
        cho "The what?" ("open", "narrow", "raised", "mid")
        gen "To train them is my cause." ("base", xpos="far_left", ypos="head")
        cho "..." ("normal", "narrow", "base", "mid")
        gen "Just put it on will you?" ("base", xpos="far_left", ypos="head")
        cho "Alright..." ("open", "narrow", "base", "mid")

    ##################
    ## Party Outfit ##
    ##################
    elif item == cho_outfit_party: #Req 16 (bottom) (clothing event unlock)
        gen "Can you put on the party outfit?" ("base", xpos="far_left", ypos="head")
        cho "Something we're celebrating?" ("smile", "base", "base", "mid")
        gen "Yes." ("base", xpos="far_left", ypos="head")
        cho "What is it?" ("base", "base", "raised", "mid")
        gen "How good you'll look in the outfit." ("base", xpos="far_left", ypos="head")
        gen "Now put it on!" ("grin", xpos="far_left", ypos="head")
        cho "Alright, one moment." ("base", "base", "base", "R")

    ###################
    ## Sailor Outfit ##
    ###################
    elif item == cho_outfit_sailor: #Req 18 (bottom, panties)
        gen "I've got this sailors outfit with your name on it!" ("grin", xpos="far_left", ypos="head")
        cho "Looks more like a slutty sailor outfit..." ("annoyed", "narrow", "raised", "down")
        cho "I doubt any seamen would actually wear something like this..." ("open", "narrow", "base", "mid")
        gen "Yeah, the semen goes on this outfit not in it..." ("base", xpos="far_left", ypos="head")
        cho "They go-- Oh...{w=0.3} I see..." ("disgust", "narrow", "base", "down", cheeks="blush")
        menu:
            "\"(And call me captain from now!)\"":
                $ cho_genie_name = "Captain"
                cho "Alright Captain!" ("soft", "narrow", "base", "mid", cheeks="blush")
            "\"(Now set sail!)\"":
                cho "Yes [cho_genie_name]!" ("soft", "narrow", "base", "mid", cheeks="blush")

    ############################
    ## Japanese School Outfit ##
    ############################
    elif item == cho_outfit_j_school: #Req 4 (top, bottom)
        gen "Could you put on the Japanese schoolgirl uniform?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 10:
            cho "*Hmm*... It's a bit..." ("disgust", "narrow", "base", "down")
            gen "A bit what?" ("base", xpos="far_left", ypos="head")
            cho "I don't know..." ("clench", "narrow", "worried", "down")
            gen "Cute?" ("base", xpos="far_left", ypos="head")
            cho "Yes..." ("annoyed", "narrow", "base", "mid", cheeks="blush")
            gen "I'm sure you'll look great in it then!" ("base", xpos="far_left", ypos="head")
            cho "...{w=0.3} Alright, fine..." ("disgust", "narrow", "base", "down", cheeks="blush")
        elif cho_whoring < 16:
            cho "*Hmm*... I guess this is what I'd be wearing if my family had stayed in Asia..." ("soft", "narrow", "base", "down")
            gen "I thought you said you weren't Japanese?" ("base", xpos="far_left", ypos="head")
            cho "There's only one Wizard school in Asia and it's in Japan... Surely you'd know this...." ("disgust", "narrow", "base", "mid")
            gen "Oh!" ("base", xpos="far_left", ypos="head")
            gen "(How small is the wizard community? These numbers don't add up...)" ("base", xpos="far_left", ypos="head")
            gen "*Err*... I'm just a bit forgetful that's all..." ("base", xpos="far_left", ypos="head")
            cho "Right...{w=0.3} Well, just give me a moment to change then..." ("annoyed", "narrow", "base", "mid")
        else: # 16+
            cho "Did they send you this from Japan?" ("open", "base", "base", "mid")
            gen "I had it custom made!" ("base", xpos="far_left", ypos="head")
            cho "You did?" ("clench", "narrow", "base", "down")
            cho "And here I thought it was an official uniform..." ("angry", "narrow", "base", "down")
            gen "What can I say, I'm quite knowledgeable about these types of uniforms... I've got quite the collection of images." ("base", xpos="far_left", ypos="head")
            cho "I bet you do..." ("disgust", "narrow", "base", "downR", cheeks="blush")
            cho "Alright, let's see if I look like any of the girls in those pictures of yours..." ("base", "narrow", "base", "mid", cheeks="blush")

    ###################
    ## Bikini Outfit ##
    ###################
    elif item == cho_outfit_bikini: #req 14 (bra, panties)
        gen "I've got this bikini for you to wear today." ("base", xpos="far_left", ypos="head")
        if cho_whoring < 16:
            cho "A Bikini?" ("soft", "narrow", "base", "mid", cheeks="blush")
            gen "Yep, this one..." ("base", xpos="far_left", ypos="head")
            cho "..." ("soft", "narrow", "base", "down", cheeks="blush")
            cho "Are you sure this is not just some scrap material you had lying around?" ("angry", "narrow", "base", "down", cheeks="blush")
            gen "I mean... It might've been made from that." ("base", xpos="far_left", ypos="head")
            cho "Figures..." ("disgust", "narrow", "base", "downR", cheeks="blush")
            cho "Well, I suppose it's better than being naked..." ("soft", "narrow", "base", "mid", cheeks="blush")
        else: # 16+
            cho "A Bikini?" ("soft", "base", "base", "mid")
            gen "Yep, this one..." ("base", xpos="far_left", ypos="head")
            cho "I see..." ("base", "narrow", "base", "down", cheeks="blush")
            cho "Well, I do look great in bikini's..." ("open", "closed", "base", "mid", cheeks="blush")
            gen "I'm still waiting for the beach episode." ("base", xpos="far_left", ypos="head")
            cho "The what?" ("angry", "base", "base", "mid")
            gen "Never mind..." ("base", xpos="far_left", ypos="head")
            cho "Alright... Just give me a moment to put it on." ("soft", "narrow", "base", "down")

    ##########################
    ## Lace Lingerie Outfit ##
    ##########################
    elif item == cho_outfit_lacelingerie: #req 14 (bra)
        gen "Could you put on this lace underwear set?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 16:
            cho "This is lingerie isn't it?" ("soft", "narrow", "base", "down", cheeks="blush")
            gen "Well spotted." ("base", xpos="far_left", ypos="head")
            cho "I can't say this is the type of underwear I usually like to wear." ("normal", "narrow", "base", "mid", cheeks="blush")
            gen "Well, there's underwear for different purposes..." ("base", xpos="far_left", ypos="head")
            cho "And lingerie's purpose is?" ("open", "narrow", "base", "downR", cheeks="blush")
            gen "To bring out the sexy!" ("base", xpos="far_left", ypos="head")
            cho "I see..." ("soft", "narrow", "base", "down", cheeks="blush")
            cho "Well if that's the goal then suppose I'll have to wear it." ("open", "closed", "base", "mid", cheeks="blush")
            cho "Prepare to meet your maker, sexiness!" ("grin", "narrow", "base", "mid", cheeks="blush")
        else: #16+
            cho "Lingerie..." ("soft", "narrow", "base", "down", cheeks="blush")
            cho "So these types of underwear really does it for men do they?" ("open", "base", "base", "downR", cheeks="blush")
            gen "Yep!" ("base", xpos="far_left", ypos="head")
            gen "Women too!" ("base", xpos="far_left", ypos="head")
            cho "*Hmm*...{w=0.3} Well I better put it on then..." ("base", "narrow", "base", "down", cheeks="blush")

    ##################
    ## Dress Outfit ##
    ##################
    elif item == cho_outfit_dress1: #req 12 (top)
        gen "I've got the perfect dress for you to wear." ("base", xpos="far_left", ypos="head")
        cho "A dress?" ("base", "base", "raised", "mid")
        gen "Yep, this one!" ("base", xpos="far_left", ypos="head")
        cho "*Hmm*...{w=0.3} Red and gold..." ("normal", "base", "base", "down")
        gen "Nice isn't it?" ("base", xpos="far_left", ypos="head")
        cho "I...{w=0.3} Yes, thank you [cho_genie_name]..." ("open", "narrow", "base", "down")
        cho "I'll put it on now then shall I." ("open", "base", "base", "mid")

    ####################
    ## Trainee Outfit ##
    ####################
    elif item == cho_outfit_trainee: #req 10 (top) (Part of clothing event)
        gen "I've got the perfect outfit for you to wear when you exercise, mind putting it on?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 16:
            cho "Did you get a size too small on purpose?" ("disgust", "narrow", "base", "down", cheeks="blush")
            gen "What do you mean?" ("base", xpos="far_left", ypos="head")
            cho "That tank top would slide up any time I try to do stretches..." ("angry", "narrow", "base", "mid", cheeks="blush")
            gen "Sounds like a bonus to me." ("base", xpos="far_left", ypos="head")
            cho "..." ("annoyed", "narrow", "base", "down", cheeks="blush")
            cho "Alright fine..." ("open", "narrow", "base", "down", cheeks="blush")
        else : #16+
            cho "What kind of exercises do you have in mind exactly?" ("open", "narrow", "base", "mid", cheeks="blush")
            gen "Ones that show off your ass mainly." ("base", xpos="far_left", ypos="head")
            cho "Figures..." ("base", "narrow", "base", "R", cheeks="blush")
            cho "Give me moment to put it on then..." ("base", "base", "base", "mid", cheeks="blush")

    ################
    ##  Smurfette ##
    ################
    elif item == cho_outfit_smurfette: #req 15 (no bra, no panties)
        gen "I've got this smurfette Cosplay for you to wear." ("base", xpos="far_left", ypos="head")
        if cho_whoring < 16:
            cho "Smurf... What?" ("soft", "narrow", "raised", "mid")
            gen "Ette." ("base", xpos="far_left", ypos="head")
            cho "*Huh*?" ("annoyed", "base", "base", "mid")
            gen "She's that cute blond one in the smurfs." ("base", xpos="far_left", ypos="head")
            cho "Alright..." ("open", "narrow", "base", "R")
            cho "Well I suppose it doesn't look too bad..." ("open", "narrow", "base", "down")
            cho "That hat is a bit silly though... Promise you won't laugh at me..." ("disgust", "narrow", "base", "mid")
            gen "Promise..." ("base", xpos="far_left", ypos="head")
            cho "Okay, just give me a moment to go change then..." ("soft", "base", "base", "mid")
        else: # 16+
            cho "Who's that?" ("soft", "base", "raised", "mid")
            gen "She's the blonde girl." ("base", xpos="far_left", ypos="head")
            cho "*Huh*?" ("angry", "narrow", "base", "mid")
            gen "Come on, she was the only female Smurf for the first five seasons. I know they look similar but surely--" ("base", xpos="far_left", ypos="head")
            cho "I don't know what a Smurf is." ("disgust", "narrow", "base", "mid")
            gen "Oh... That makes more sense..." ("base", xpos="far_left", ypos="head")
            gen "Well, they're these tiny blue creatures that lives in the woods." ("base", xpos="far_left", ypos="head")
            cho "Like a pixie?" ("open", "base", "base", "mid")
            gen "Smurfs are only blue but I guess they're the same size." ("base", xpos="far_left", ypos="head")
            cho "Pixies are only blue as well..." ("angry", "narrow", "base", "mid")
            gen "Pretty sure they're not, what do they teach you in history class here?" ("base", xpos="far_left", ypos="head")
            cho "History? We were told they were blue in our Care of magical creatures class." ("angry", "narrow", "base", "mid")
            gen "Really?" ("base", xpos="far_left", ypos="head")
            gen "(Genepool must've gotten fucked after generations of inbreeding...)" ("base", xpos="far_left", ypos="head")
            gen "(Such a shame...)" ("base", xpos="far_left", ypos="head")
            gen "What ever the case... I'd like you to wear this cosplay outfit for me." ("base", xpos="far_left", ypos="head")
            cho "Oh... Alright..." ("open", "narrow", "base", "mid")

    ######################
    ## Space Jam Outfit ##
    ######################
    elif item == cho_outfit_toon: #req 4
        gen "Put on this space Jam outfit for me will you?" ("base", xpos="far_left", ypos="head")
        cho "This outfit doesn't look very space themed to me..." ("soft", "narrow", "raised", "mid")
        gen "It's not about space!" ("base", xpos="far_left", ypos="head")
        gen "It's Basketball themed!" ("base", xpos="far_left", ypos="head")
        cho "Basket... Then why does it have space in the name?" ("soft", "narrow", "raised", "mid")
        gen "I don't know, why does Quidditch have Quid and ditch in the name if it's not about throwing money on the ground?" ("base", xpos="far_left", ypos="head")
        cho "*Err*...{w} I'll just put this on then shall I?" ("disgust", "narrow", "base", "mid")

    ####################
    ## Chun-Li Outfit ##
    ####################
    elif item == cho_outfit_chun_li: #req 16 (tattoo's)
        gen "I've got this cosplay outfit for you to wear." ("base", xpos="far_left", ypos="head")
        cho "Cosplay?" ("open", "base", "raised", "mid")
        gen "Yeah, it's a video-- *Err*... Famous female martial artist." ("base", xpos="far_left", ypos="head")
        cho "Oh? What's her name?" ("smile", "base", "base", "mid")
        gen "Chun-Li!" ("base", xpos="far_left", ypos="head")
        cho "*Hmm*... Not sure if I've heard of her." ("soft", "base", "base", "mid")
        gen "(Like everyone in this castle...)" ("base", xpos="far_left", ypos="head")
        cho "I suppose the costume look quite well made." ("open", "base", "base", "down", cheeks="blush")
        gen "Finest silk in the country!" ("base", xpos="far_left", ypos="head")
        cho "Alright, I'll wear it... Even though that Tattoo is a bit..." ("base", "narrow", "base", "down", cheeks="blush")
        gen "A bit what? A bit too awesome?" ("base", xpos="far_left", ypos="head")
        cho "So... You really don't know what it says." ("soft", "narrow", "base", "mid", cheeks="blush")
        gen "Not the faintest idea." ("base", xpos="far_left", ypos="head")
        cho "Well... I suppose that's a good thing then..." ("soft", "narrow", "base", "R", cheeks="blush")
    ##################
    ## Police Woman ##
    ##################
    elif item == cho_outfit_police: #req 10 (bottoms)
        gen "Put on the police cosplay uniform will you?" ("base", xpos="far_left", ypos="head")
        cho "Police?" ("soft", "base", "raised", "mid")
        gen "Yeah, check out the sweet shades on this one. Aren't they cool?" ("base", xpos="far_left", ypos="head")
        cho "Trying to take away the focus on that short top?" ("open", "narrow", "base", "down", cheeks="blush")
        gen "No clue what you're talking about..." ("base", xpos="far_left", ypos="head")
        cho "*Hmm*..." ("base", "narrow", "base", "down", cheeks="blush")
        gen "You know, police are some of the most well respected people in muggle society..." ("base", xpos="far_left", ypos="head")
        gen "I know how much you love that stuff." ("base", xpos="far_left", ypos="head")
        cho "They are?" ("open", "base", "base", "mid", cheeks="blush")
        gen "Sure!" ("base", xpos="far_left", ypos="head")
        cho "Alright then... If you say so." ("base", "base", "base", "mid")

    # TODO: Blacklist fallbacks have to be added.
    return

label cho_reaction_equip_outfit_fail(item):
    ### Add specific Outfit reactions here.

    ########################
    ## Cheerleader ##
    ########################
    if item == cho_outfit_cheerleader: #Req 10 whoring
        gen "Could you wear the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "Cheerleader--{w=0.4} [cho_genie_name]!" ("clench", "narrow", "base", "mid")
            gen "what?" ("base", xpos="far_left", ypos="head")
            cho "I am a real athlete!" ("disgust", "narrow", "angry", "mid")
            cho "I do not mingle with the cheerleading squad..." ("annoyed", "narrow", "angry", "R")
            gen "Now, now [cho_name]... Cheerleaders are athletes as well." ("base", xpos="far_left", ypos="head")
            gen "Their role is just as important as yours." ("base", xpos="far_left", ypos="head")
            cho "Don't make me laugh..." ("open", "closed", "angry", "mid")
            cho "They only thing they're good at is distracting the audience from the game." ("annoyed", "narrow", "angry", "mid")
            gen "Well, when you put it--{w=0.3} *Err*... No, their role is very important!" ("base", xpos="far_left", ypos="head")
            gen "What else are you supposed to look at during half time?" ("base", xpos="far_left", ypos="head")
            cho "Yeah... I'd rather not, thanks..." ("open", "narrow", "angry", "R")
        else: # < 10
            cho "No thanks... I'd rather not put on anything that those talentless posers are wearing." ("annoyed", "closed", "angry", "down")
            gen "Oh, come on... Cheerleading requires plenty of talent!" ("base", xpos="far_left", ypos="head")
            cho "Like what? the art of flailing pompoms around?" ("soft", "narrow", "angry", "mid")
            gen "Coordination, spirit, and a positive attitude." ("base", xpos="far_left", ypos="head")
            gen "These are all important things you need to be a good Cheerleader." ("base", xpos="far_left", ypos="head")
            cho "*Pff*... Those things comes naturally to me anyway..." ("open", "narrow", "base", "R")
            gen "{size=-4}Ability to take constructive criticism...{/size}" ("base", xpos="far_left", ypos="head")
            cho "*Huh*?" ("soft", "narrow", "base", "mid")
            gen "Never mind..." ("base", xpos="far_left", ypos="head")

    ##################
    ## Misty Outfit ##
    ##################
    elif item == cho_outfit_misty: #Req 15 (no bra)
        gen "Put on this misty cosplay for me will you?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "What on earth is this?!" ("angry", "wide", "base", "down")
            gen "Misty cosplay..." ("base", xpos="far_left", ypos="head")
            cho "Who?" ("disgust", "narrow", "angry", "mid")
            gen "She's a gym leader." ("base", xpos="far_left", ypos="head")
            cho "Who wears something like this at the gym?!" ("clench", "narrow", "raised", "down")
            gen "Well, she does obviously... Although it's more of an every day clothing." ("base", xpos="far_left", ypos="head")
            cho "..." ("disgust", "narrow", "base", "mid")
            cho "Yeah, no thank you..." ("annoyed", "narrow", "angry", "R")
        elif cho_whoring < 10:
            cho "A cosplay?" ("open", "base", "raised", "mid")
            cho "Whoa... Who is this Misty girl to be wearing something like this?" ("open", "base", "raised", "down")
            gen "She's a trainer, much like me." ("base", xpos="far_left", ypos="head")
            cho "Really?" ("clench", "narrow", "base", "mid")
            gen "Yup." ("base", xpos="far_left", ypos="head")
            cho "What kind of sport is it for her to be wearing this?" ("annoyed", "narrow", "raised", "down")
            gen "Well, they basically have these animals fight against each other." ("base", xpos="far_left", ypos="head")
            cho "What?!" ("angry", "wide", "raised", "mid")
            cho "Like cock fighting? Isn't that illegal?" ("clench", "narrow", "worried", "mid")
            gen "I don't think there's any cocks involved, I'm not sure what kind of fiction you've been reading..." ("base", xpos="far_left", ypos="head")
            cho "What?" ("angry", "base", "base", "mid")
            gen "You going to put it on or what?" ("base", xpos="far_left", ypos="head")
            cho "I'd rather not..." ("annoyed", "narrow", "base", "down")
            gen "Fine..." ("base", xpos="far_left", ypos="head")
        else: # < 15
            cho "This top has no bra with it..." ("open", "narrow", "base", "down")
            gen "Do you need one?" ("base", xpos="far_left", ypos="head")
            cho "Excuse me?" ("soft", "narrow", "angry", "mid")
            gen "(Oh, shit...)" ("angry", xpos="far_left", ypos="head")
            gen "What I meant to say was--" ("base", xpos="far_left", ypos="head")
            cho "..." ("annoyed", "base", "angry", "mid")
            gen "Never mind..." ("base", xpos="far_left", ypos="head")

    ##################
    ## Party Outfit ##
    ##################
    elif item == cho_outfit_party: #Req 16 (bottom) (clothing event unlock, this is a fallback)
        gen "Can you put on the party outfit?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "The... Party outfit?" ("open", "base", "raised", "mid")
            gen "Yeah... This one..." ("base", xpos="far_left", ypos="head")
            cho "..." ("normal", "base", "base", "down")
            cho "[cho_genie_name]!" ("angry", "wide", "base", "mid")
            gen "What?" ("base", xpos="far_left", ypos="head")
            cho "What do you mean what? This outfit has no underwear!" ("upset", "narrow", "angry", "mid")
            gen "I mean... It covers the important bits does it not?" ("base", xpos="far_left", ypos="head")
            gen "Maybe not from every angle but if you were careful not to--" ("base", xpos="far_left", ypos="head")
            cho "I am not wearing this!" ("angry", "narrow", "angry", "mid")
            gen "Alright, No partying for you I guess..." ("base", xpos="far_left", ypos="head")
        elif cho_whoring < 10:
            cho "This outfit has no underwear!" ("angry", "base", "base", "down")
            gen "Oh... It doesn't?" ("base", xpos="far_left", ypos="head")
            cho "It does not..." ("disgust", "narrow", "base", "mid")
            cho "I am not going to stand around casually in an outfit without underwear..." ("annoyed", "narrow", "base", "R")
            gen "I do it all the time, I don't see what the problem is." ("base", xpos="far_left", ypos="head")
            cho "You're not wearing any..." ("mad", "narrow", "base", "mid")
            gen "Making the Scotts proud..." ("base", xpos="far_left", ypos="head")
            cho "..." ("disgust", "narrow", "base", "mid")
        else: # < 16
            cho "This outfit is way to slutty..." ("open", "narrow", "base", "down")
            cho "My nipples would poke right through this..." ("soft", "narrow", "base", "down", cheeks="blush")
            gen "Counting on it..." ("base", xpos="far_left", ypos="head")
            cho "Yeah, I'm going to have to pass on this one..." ("angry", "narrow", "base", "down", cheeks="blush")

    ###################
    ## Sailor Outfit ##
    ###################
    elif item == cho_outfit_sailor: #Req 18 (bottom, panties)
        gen "I've got this sailors outfit with your name on it!" ("grin", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "Why would I put on a sailors outfit?" ("soft", "narrow", "base", "mid")
            gen "Say that again once you've seen it!" ("grin", xpos="far_left", ypos="head")
            cho "I'd rather not..." ("disgust", "narrow", "base", "mid")
        elif cho_whoring < 10:
            cho "Why would I put on a sailors outfit in here?" ("soft", "narrow", "raised", "mid")
            gen "Cause you'd look great in it!" ("grin", xpos="far_left", ypos="head")
            cho "... Is that the only reason?" ("disgust", "base", "base", "mid")
            gen "Yep, now put it on!" ("grin", xpos="far_left", ypos="head")
            cho "... I'll pass..." ("annoyed", "narrow", "base", "R")
        else: # < 18
            cho "They were this outfit at sea do they?" ("open", "narrow", "raised", "down")
            gen "Nope, the semen goes on this outfit, not in it." ("base", xpos="far_left", ypos="head")
            cho "Wait... So it's like a fetish thing?" ("clench", "wide", "base", "mid")
            gen "*Err*... I mean, it was just a joke. Get it, cause semen sounds like--" ("base", xpos="far_left", ypos="head")
            cho "I am not putting on some fetish thing for you!" ("disgust", "base", "angry", "mid")
            gen "It's not..." ("base", xpos="far_left", ypos="head")
            cho "..." ("annoyed", "narrow", "angry", "mid")
            gen "Yeah, I guess it kind of is..." ("base", xpos="far_left", ypos="head")

    ############################
    ## Japanese School Outfit ##
    ############################
    elif item == cho_outfit_j_school: #Req 4 (top, bottom)
        gen "Could you put on the Japanese schoolgirl uniform?" ("base", xpos="far_left", ypos="head")
        cho "[cho_genie_name], I'm not Japanese..." ("annoyed", "narrow", "angry", "mid")
        gen "So?" ("base", xpos="far_left", ypos="head")
        cho "Why do you want me to put on a Japanese school uniform?" ("upset", "narrow", "angry", "mid")
        gen "(I better tread carefully...)" ("base", xpos="far_left", ypos="head")
        menu:
            "\"Japanese schoolgirls are hot!\"":
                cho "What?!" ("angry", "base", "angry", "mid")
                gen "*Err*... I mean, in the videos I've watched..." ("angry", xpos="far_left", ypos="head")
                cho "I am not putting this on so you can live some fantasy of yours..." ("mad", "narrow", "angry", "mid")
                gen "It's not...{w=0.3} Fine..." ("base", xpos="far_left", ypos="head")
            "\"It's a new design I'm proposing to a Japanese wizarding school!\"":
                cho "Mahoutokoro?" ("soft", "narrow", "raised", "mid")
                gen "See, I knew you were Japanese!" ("base", xpos="far_left", ypos="head")
                cho "That's the name of the school..." ("disgust", "narrow", "angry", "mid")
                gen "Oh..." ("base", xpos="far_left", ypos="head")
                gen "So, are you putting it on or not?" ("base", xpos="far_left", ypos="head")
                cho "I am not..." ("annoyed", "narrow", "base", "mid")

    ###################
    ## Bikini Outfit ##
    ###################
    elif item == cho_outfit_bikini: #req 14 (bra, panties)
        gen "I've got this bikini for you to wear today." ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "A what?!" ("clench", "wide", "base", "mid")
            gen "Well... It's technically a two piece set..." ("base", xpos="far_left", ypos="head")
            gen "These ones..." ("base", xpos="far_left", ypos="head")
            cho "What on earth is wrong with you?" ("scream", "narrow", "angry", "down")
            cho "Putting on a regular bikini in your office would be bad enough but this!" ("angry", "base", "angry", "mid")
            gen "Define regular..." ("base", xpos="far_left", ypos="head")
            cho "..." ("mad", "narrow", "angry", "mid")
            gen "Alright, whatever... Forget I said anything..." ("base", xpos="far_left", ypos="head")
        elif cho_whoring < 10:
            cho "A bikini? Why would I--" ("angry", "narrow", "base", "mid")
            gen "This one..." ("base", xpos="far_left", ypos="head")
            cho "[cho_genie_name]!" ("clench", "narrow", "base", "down")
            gen "What?" ("base", xpos="far_left", ypos="head")
            cho "How is this meant to be a bikini?" ("angry", "base", "angry", "down")
            cho "This would barely cover my... It would barely cover anything!" ("disgust", "narrow", "base", "down")
            gen "Don't be silly, it covers plenty..." ("base", xpos="far_left", ypos="head")
            cho "I am not wearing it..." ("annoyed", "narrow", "angry", "mid")
        else: # < 14
            gen "This one..." ("base", xpos="far_left", ypos="head")
            cho "This barely covers anything!" ("angry", "narrow", "base", "down")
            gen "I think you'll find that the purpose of a bikini is to in fact to cover..." ("base", xpos="far_left", ypos="head")
            cho "..." ("disgust", "narrow", "base", "mid")
            cho "I'm not going to stand around in your office wearing something like this..." ("open", "closed", "base", "mid")
            gen "Fine, don't wear it then..." ("base", xpos="far_left", ypos="head")

    ##########################
    ## Lace Lingerie Outfit ##
    ##########################
    elif item == cho_outfit_lacelingerie: #req 14 (bra)
        gen "Could you put on this lace underwear set?" ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "Lace what?" ("soft", "narrow", "raised", "mid")
            gen "Underwear!" ("base", xpos="far_left", ypos="head")
            gen "These ones..." ("base", xpos="far_left", ypos="head")
            cho "This is Lingerie!" ("disgust", "wide", "base", "down")
            gen "I mean, what did you expect when I said--" ("base", xpos="far_left", ypos="head")
            cho "I am not changing my underwear for you!" ("disgust", "base", "angry", "mid")
            cho "Especially into something like this!" ("soft", "narrow", "angry", "down")
            cho "I can't believe you'd ask me to do this..." ("disgust", "base", "angry", "mid")
            gen "I was just testing you! And you failed [cho_name]!" ("base", xpos="far_left", ypos="head")
            cho "A Test?! What kind of test was that supposed to be?" ("angry", "narrow", "base", "mid")
            gen "*Err*... A test of virtue!" ("base", xpos="far_left", ypos="head")
            cho "*Huh*?" ("angry", "base", "raised", "mid")
            cho "Isn't having virtue supposed to be a positive thing?" ("annoyed", "narrow", "angry", "mid")
            gen "Did I say virtue? I meant modesty!" ("base", xpos="far_left", ypos="head")
            cho "..." ("disgust", "narrow", "angry", "mid")
            gen "Just put them on already before you fail another test!" ("base", xpos="far_left", ypos="head")
            cho "I think I'll have to take the fail on this one..." ("normal", "narrow", "angry", "mid")
        elif cho_whoring < 10:
            cho "This is lingerie..." ("disgust", "narrow", "base", "down", cheeks="blush")
            gen "That it is... Well spotted, seeker." ("base", xpos="far_left", ypos="head")
            cho "You can see completely through it..." ("angry", "narrow", "base", "down", cheeks="blush")
            gen "I know!" ("base", xpos="far_left", ypos="head")
            gen "Isn't it great?" ("base", xpos="far_left", ypos="head")
            cho "I am not wearing this." ("soft", "closed", "angry", "mid", cheeks="blush")
            gen "(Damn... I thought I'd caught that snatch...)" ("base", xpos="far_left", ypos="head")
        else: # < 14
            cho "This is lingerie..." ("normal", "narrow", "base", "down", cheeks="blush")
            cho "Isn't this something you'd wear to please a partner?" ("annoyed", "narrow", "base", "mid", cheeks="blush")
            gen "I mean..." ("base", xpos="far_left", ypos="head")
            cho "..." ("normal", "narrow", "base", "mid", cheeks="blush")
            gen "What if I said it would help with aero dynamics?" ("base", xpos="far_left", ypos="head")
            cho "Does it?" ("open", "narrow", "raised", "mid", cheeks="blush")
            gen "*Err*...{w} Yes?" ("base", xpos="far_left", ypos="head")
            cho "You don't even sound convinced yourself..." ("disgust", "narrow", "base", "mid")
            gen "So is that a yes, or?" ("base", xpos="far_left", ypos="head")
            cho "It is--" ("open", "closed", "base", "mid", cheeks="blush")
            gen "Nice!" ("grin", xpos="far_left", ypos="head")
            cho "Not..." ("soft", "narrow", "base", "downR", cheeks="blush")
            gen "Dang..." ("base", xpos="far_left", ypos="head")

    ##################
    ## Dress Outfit ##
    ##################
    elif item == cho_outfit_dress1: #req 12 (top)
        gen "I've got the perfect dress for you to wear." ("base", xpos="far_left", ypos="head")
        cho "A dress?" ("soft", "base", "base", "mid")
        gen "Yep, this one!" ("base", xpos="far_left", ypos="head")
        cho "[cho_genie_name]!" ("clench", "narrow", "base", "down")
        gen "Yes?" ("base", xpos="far_left", ypos="head")
        gen "You're loving it?" ("base", xpos="far_left", ypos="head")
        cho "Is this some sort of joke?" ("disgust", "narrow", "base", "mid")
        gen "What? Did I get the wrong size?" ("base", xpos="far_left", ypos="head")
        gen "I didn't buy some Chinese knock off did I?" ("base", xpos="far_left", ypos="head")
        cho "No, that's the problem." ("angry", "narrow", "base", "mid")
        cho "My mother would be so mad she saw me wearing such a cheap knock off..." ("disgust", "base", "base", "down")
        gen "Cheap! I'll have you know I paid--" ("base", xpos="far_left", ypos="head")
        cho "..." ("disgust", "narrow", "base", "mid")
        gen "Alright fine... Have it your way..." ("base", xpos="far_left", ypos="head")

    ####################
    ## Trainee Outfit ##
    ####################
    elif item == cho_outfit_trainee: #req 10 (top) (Part of clothing event, this is a fallback)
        gen "I've got the perfect outfit for you to wear when you exercise, mind putting it on?" ("base", xpos="far_left", ypos="head")
        cho "It's a bit small don't you think?" ("annoyed", "base", "base", "down")
        gen "Is it?" ("base", xpos="far_left", ypos="head")
        cho "That tank top doesn't look like it would go down far enough..." ("soft", "narrow", "base", "down")
        gen "Nonsense, a little bit of airflow doesn't hurt anyone..." ("base", xpos="far_left", ypos="head")
        cho "*Hmm*... I'd rather wear my normal clothing..." ("annoyed", "narrow", "base", "mid")

    ################
    ##  Smurfette ##
    ################
    elif item == cho_outfit_smurfette: #req 15 (no bra, no panties) (part of event unlock, this is a fallback)
        gen "I've got this smurfette Cosplay for you to wear." ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "A Cosplay?" ("angry", "narrow", "base", "mid")
            gen "Yep, she's that cute--" ("base", xpos="far_left", ypos="head")
            cho "I am not putting on some cosplay for you..." ("annoyed", "narrow", "angry", "mid")
            gen "..." ("base", xpos="far_left", ypos="head")
        else: # 4+
            gen "I've got this smurfette Cosplay for you to wear." ("base", xpos="far_left", ypos="head")
            cho "[cho_genie_name], this outfit has no underwear." ("angry", "narrow", "base", "mid")
            gen "I mean, you never saw it in the show..." ("base", xpos="far_left", ypos="head")
            cho "I am not putting it on..." ("annoyed", "narrow", "angry", "mid")

    ######################
    ## Space Jam Outfit ##
    ######################
    elif item == cho_outfit_toon: #req 4
        gen "I think It's time you wear an outfit for a real sport for once." ("base", xpos="far_left", ypos="head")
        cho "What do you mean real sport?" ("angry", "narrow", "base", "mid")
        gen "One that isn't played riding cleaning appliances." ("base", xpos="far_left", ypos="head")
        cho "Quidditch is a real sport [cho_genie_name]!" ("angry", "narrow", "base", "mid")
        gen "Yeah, yeah, sure it is..." ("base", xpos="far_left", ypos="head")
        gen "Now put this on and show me what a real athlete should look like." ("base", xpos="far_left", ypos="head")
        cho "I'd rather not, seeing that Quidditch isn't a real sport... Which would make me not a real athlete..." ("annoyed", "narrow", "angry", "mid")
        gen "... Well, you're the one that said it..." ("base", xpos="far_left", ypos="head")
        cho "..." ("annoyed", "narrow", "angry", "R")

    ####################
    ## Chun-Li Outfit ##
    ####################
    elif item == cho_outfit_chun_li: #req 16 (tattoo's)
        gen "I've got this cosplay outfit for you to wear." ("base", xpos="far_left", ypos="head")
        cho "cosplay?" ("normal", "base", "raised", "mid")
        if cho_whoring < 4:
            cho "I'm not putting on a cosplay outfit for you..." ("angry", "narrow", "base", "mid")
            gen "Why not?" ("base", xpos="far_left", ypos="head")
            cho "Just look at it!" ("mad", "base", "base", "down")
            cho "Even the armour has got nipples on it." ("disgust", "narrow", "angry", "down")
            gen "Indeed, some fine eye for detail!" ("base", xpos="far_left", ypos="head")
            cho "I'm not wearing it..." ("disgust", "base", "angry", "mid")
        elif cho_whoring < 10:
            cho "Why is this so revealing?" ("disgust", "narrow", "base", "down")
            gen "All good cosplays are." ("base", xpos="far_left", ypos="head")
            cho "Really?" ("annoyed", "narrow", "angry", "mid")
            gen "Why else do you think there's so many photos like that out there?" ("base", xpos="far_left", ypos="head")
            cho "*Hmm*..." ("annoyed", "narrow", "base", "R")
            cho "I think I'll pass..." ("open", "closed", "base", "mid")
            cho "" ("normal", "base", "base", "mid")
        else: # 10+
            cho "What's with that Tattoo?!" ("clench", "wide", "base", "down")
            gen "It's a dragon!" ("base", xpos="far_left", ypos="head")
            gen "Pretty sweet isn't--" ("base", xpos="far_left", ypos="head")
            cho "Not that one, the other one!" ("annoyed", "narrow", "angry", "down", cheeks="blush")
            gen "Oh, yeah, that one's pretty cool too I suppose." ("base", xpos="far_left", ypos="head")
            cho "Do you even know what it says?" ("open", "narrow", "angry", "mid", cheeks="blush")
            gen "I don't know... Strength? Vigour?" ("base", xpos="far_left", ypos="head")
            cho "I am not wearing it..." ("angry", "narrow", "base", "R", cheeks="blush")

    ##################
    ## Police Woman ##
    ##################
    elif item == cho_outfit_police: #req 10 (bottoms)
        gen "I've got this cosplay for you to wear." ("base", xpos="far_left", ypos="head")
        cho "Cosplay?" ("normal", "base", "raised", "mid")
        gen "Yeah." ("base", xpos="far_left", ypos="head")
        cho "I don't know about that..." ("disgust", "narrow", "base", "R")
        gen "Did I say cosplay? I meant uniform!" ("base", xpos="far_left", ypos="head")
        cho "*Hmm*... Let me see it." ("annoyed", "narrow", "base", "mid")
        gen "This one." ("base", xpos="far_left", ypos="head")
        if cho_whoring < 4:
            cho "I don't know about that [cho_genie_name]..." ("disgust", "narrow", "base", "down")
            cho "Looks a lot like cosplay to me..." ("disgust", "narrow", "base", "down")
            gen "So what? I'm sure you'll look great in it." ("base", xpos="far_left", ypos="head")
            cho "I think I'll pass..." ("open", "narrow", "base", "R")
        else: # 4+
            cho "Why is this top so small?" ("angry", "narrow", "base", "down")
            gen "To put more focus on your breasts obviously." ("base", xpos="far_left", ypos="head")
            cho "My... Didn't you say this was a uniform?" ("disgust", "narrow", "angry", "mid", cheeks="blush")
            cho "Why would a uniform put focus..." ("open", "closed", "angry", "mid", cheeks="blush")
            gen "Well... The cosplay version--" ("base", xpos="far_left", ypos="head")
            cho "..." ("disgust", "narrow", "raised", "mid")
            gen "What I meant to say was..." ("base", xpos="far_left", ypos="head")
            cho "..." ("disgust", "base", "angry", "mid")
            gen "Alright then... Maybe some other time." ("base", xpos="far_left", ypos="head")

    else:
        $ random_number = renpy.random.randint(1, 5)
        if random_number == 1:
            cho "I am not wearing that..." ("clench", "closed", "base", "mid")
        elif random_number == 2:
            cho "Thanks but no thanks..." ("base", "base", "base", "mid")
        elif random_number == 3:
            cho "You actually think I'd put on something like that?" ("angry", "base", "base", "mid")
        elif random_number == 4:
            cho "Do I look like Granger [cho_genie_name]? I am not wearing something like that..." ("disgust", "narrow", "base", "mid")
        elif random_number == 5:
            cho "This is too much." ("mad", "closed", "base", "mid")

    return

label cho_reaction_blacklist(item):
    cho "Is that really necessary, [cho_genie_name]?"

    if "top" in item.blacklist and cho.is_worn("top"):
        cho "My upper garment won't fit with this."

    if "bottom" in item.blacklist and cho.is_worn("bottom"):
        cho "Forget about my bottoms, no way they'd fit."

    if "bra" in item.blacklist and cho.is_worn("bra"):
        cho "I don't know if I can wear a bra with it."

    if "panties" in item.blacklist and cho.is_worn("panties"):
        cho "Seems as if I would need to take off my panties first to wear this."

    cho "You're asking a lot, [cho_genie_name], you know that?"
    gen "Come on Cho, you're my favourite {size=-6}snatch grabber{/size} in training!" ("base", xpos="far_left", ypos="head")
    cho "What was that?"
    gen "I said. You're my favourite snitch catcher in training." ("base", xpos="far_left", ypos="head")
    cho "*sigh* Alright, if it means this much to you [cho_genie_name]..."
    gen "Hell yes!" ("grin", xpos="far_left", ypos="head")

    return

label cho_reaction_fallback(item):
    if cho_whoring < get_character_requirement("cho", "unequip top") and not "top" in cho.blacklist and not item.type == "top":
        $ cho.equip(cho_top_school1)

    if cho_whoring < get_character_requirement("cho", "unequip bottom") and not "bottom" in cho.blacklist and not item.type == "bottom":
        $ cho.equip(cho_bottom_school1)

    if cho_whoring < get_character_requirement("cho", "unequip bra") and not "bra" in cho.blacklist and not item.type == "bra":
        $ cho.equip(cho_bra_basic1)

    if cho_whoring < get_character_requirement("cho", "unequip panties") and not "panties" in cho.blacklist and not item.type == "panties":
        $ cho.equip(cho_panties_basic1)

    cho "Just give me a second, I need to get my clothes back in order." ("open", "base", "base", "R")
    cho "" ("base", "base", "base", "mid")
    return
