403Webshell
Server IP : 157.230.181.24  /  Your IP : 216.73.217.11
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux conductive 6.8.0-117-generic #117-Ubuntu SMP PREEMPT_DYNAMIC Tue May 5 19:26:24 UTC 2026 x86_64
User :  ( 1000)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /proc/self/root/opt/aim-bots/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/self/root/opt/aim-bots/__pycache__/persona_actor.cpython-312.pyc
�

�D`j�%����dZddlmZddlZddlZddlmZddlmZm	Z	Gd�d�Z
eGd�d	��ZGd
�d�ZGd�d
e�Z
Gd�de�ZGd�de�Zdd�Zdd�Zy)uOGenerate novel AIM replies in a persona's voice — never copies archive lines.�)�annotationsN)�defaultdict)�	dataclass�fieldc�(�eZdZdZdd�Zdd�Zdd�Zy)	�StyleAdapter))z	\bDon't\b�dont)z	\bdon't\br	)z	\bCan't\b�cant)z	\bcan't\br
)z	\bWon't\b�wont)z	\bwon't\br)z\bI'm\bzi'm)z\bIt's\bzit's)z
\bYou're\bzyou're)z\bHaha\b�haha)z
\bHahaha\b�hahahah)z	\bHahah\b�hahah)z\bLol\b�lol)z\bWow\b�wow)z\bUnfortunately\b�
Unfortunantly)z\bRofl\b�roflc�n�||_|jdd�|_|jdd�|_y)N�pct_lowercase_start�ffffff�?�pct_no_end_punctg�������?)�voice�get�lowercase_rate�
no_punct_rate)�selfrs  �/opt/aim-bots/persona_actor.py�__init__zStyleAdapter.__init__ s1����
�#�i�i�(=�s�C���"�Y�Y�'9�3�?���c���|j�}|s|S|jD]\}}tj|||�}�t	j�|j
kr=|dj
�r*|jd�s|dj�|ddz}t	j�|jkr5t|�dkr'|jd�r|jd�s|dd}|S)Nr�I��(�.z...���)�strip�REPLACEMENTS�re�sub�randomr�isupper�
startswith�lowerr�len�endswith)r�text�pattern�repls    r�applyzStyleAdapter.apply%s����z�z�|����K�!�.�.�	/�M�G�T��6�6�'�4��.�D�	/��=�=�?�T�0�0�0�T�!�W�_�_�5F�t���_b�Oc���7�=�=�?�T�!�"�X�-�D��M�M�O�d�0�0�0��D�	�B���
�
�c�"��M�M�%�(����9�D��rc�l�|D�cgc]$}|j�s�|j|���&c}Scc}w�N)r%r2)r�parts�ps   r�	apply_allzStyleAdapter.apply_all6s&��',�:�!����	��
�
�1�
�:�:��:s�1�1N)r�dict�return�None)r/�strr9r;)r5�	list[str]r9r<)�__name__�
__module__�__qualname__r&rr2r7�rrrrs���L�&@�
�";rrc�p�eZdZUdZded<dZded<dZded<dZded	<d
Zded<dZ	d
ed<dZ
ded<y)�ConversationState�idler;�topicNzbool | None�work_tonight�
str | None�	work_time�
plans_tonight��last_user_questionF�bool�greetedr�int�turn)r=r>r?rD�__annotations__rErGrHrJrLrNr@rrrBrB:sH���E�3�� $�L�+�$� �I�z� � $�M�:�$� ��� ��G�T���D�#�MrrBc
��eZdZdZgd�Zidgd��dgd��dgd��d	gd
��dgd��d
gd��dgd��de�dgd��dgd��dgd��dgd��dgd��dgd��dgd��d gd!��d"gd#��gd$�gd%�gd&�gd'�gd(�gd)�gd*�gd+�gd,�gd-�gd.�d/��Zidgd0��dgd1��dgd2��d	d3d4g�d5gd6��d7d3d8g�d9gd:��d;d<d=g�d>gd?��d@dAdBg�d gdC��d"dAdDg�dgdE��dgdF��ddGdHg�d
dIdJg�dKgdL��gdM�dNdOggdP�dQdBgdR��ZidgdS��dgdT��dgdU��d	gdV��dgdW��d
gdX��dgdY��de�dgdZ��dgd[��dgd\��dgd]��dd^d_g�d`gda��dbgdc��ddgde��dfgdg��gdh�gdi�gdj�dk��Zidgdl��dgdm��dgdn��d	gd
��dogdp��dqgdr��dsgdt��dugdv��dwgdx��dygdz��d{gd|��d}gd~��dgd��dgd���d�gd���d�gd���d�gd���gd��gd��gd��gd��d���Zd�d��Z	d�d��Z
d�d��Zd�d�d��Zd�d�d��Z
d�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Zd�d��Z d�d��Z!d�d��Z"d�d��Z#d�d��Z$d�d��Z%d�d��Z&		d�													d�d��Z'		d�									d�d��Z(y�)��PersonaActoruMMulti-turn aware reply generator — answers questions and keeps chat moving.)�5z5:30�6z6:30�7z7:30�8z	like 6ishz6 +z	10 30-ishzafter 7�greets)
�sup man�yo�hey�sup�hey manzyo dudez
whats goin onzsup duderYrX�greet_follow)�u?�nm u?�
whatcha up toznot much u?�activity)�not much�on the computer�nothingzjust chillinzbrowsing /b/ maybe�listening to music�same oldzDoing Something...�activity_follow)r]�what about u�
whatcha doingzu doing anything?�work_yes)zyeah i think so�yeah unfortunantlyz
probably yeahz
think so yeah�work_no)znah should be off�
dont think so�nah im free�work_unsure)znot totally sure yet�
might have tozthink so but idk�time_answers�
work_sorry)z
yeah it sucks�sucks�
unfortunantly�that wasn't cool�laugh)rrr
r�rofl!�rotfl�laugh_follow)�owned�smooth�nice�you're so awful�A burn.�for real�hahahar)zhaha wowzmight hop on laterz1they took out the paladin mass ressurection skillzWoW feels so weirdzyeah if im bored�
wow_follow)�u on?zrather go to a show thozhelp with this elite? lol�girls)zdude tell me everythingzu gonna talk to her or whatzhaha classiczu need to just go for itzis she hot thozyou looked at her face?!rzr�girls_follow)�detailszu gonna see her again?ryr{�shows)zdude that show was insanezmaylene is coming throughzwe HAVE to get tixz"we gotta get malachi and andrew inzlydia and amy are coming rightzwhole crew is goingzmaylene never disappointszthe pit was crazy last timez
HERE WE GOOOOzkeefe better not bail againzdude we're going rightzchariot next month we gotta go�shows_follow)zget tix?ztell dagzcharles in?zwhen is it again?�wordzwe're all goingzdont bail on me)z
yeah maybe�could�	we'll seezyeah im downr�)zcant tonightzno carzmaybe later�nah)zcheck /b/ rnzamerican idle is onz,dude maylene is coming we gotta get everyonezu talk to that girl yet?zmonroe mall later?zamy is being annoying lolzu need a ride?zelevation was so dumb todayz-we still getting the crew for that show rightzdid malachi say he was in?zmyspace is being dumb againzu free tonight?)rZrXr[zsup back�oh hey�help)�later�kk�see ya�k�bai�peace�l8r)zWhat do you have a gun for?zNo soundzwe know�	Who knowszWhy walk when you can ride?zwtf, teletubbies?!zwtf?zPlaying Burning Crusade Beta ;ozi hate cosplayingzonly 13 episodesz(Mad crazy stuffs going down on the worldz"Nickelodeon Studios was shut down.)
r|rtrzryr{zNice.r}zit's a polite laugh�have no idea�yawnzWoo woo.zyeah D:zcool down for an hour)rryrzr~�classic)zdude check /b/z
4chan probablz,http://img.4chan.org/b/src/1181021064656.jpgz0http://www.explosm.net/db/files/comicbulemia.pngzimagechan is wild today�ty)rrzrofl!!r{ry�wtfr�rzr|�oh noesr�D:z;pr��mm i betr#�gah�xDzHahha<3�	SQUIRRRTTzTIEING YOUR SHOUUUEEEEE)r{ryrr�r�r|r)�hangout_yes�
hangout_no�	plan_push�return_after_gap�bye�absurd�sarcasm�roast_follow�chan�chaos�chaos_follow)rZrXrYzsup caker[�dudezwhats up)r]�what u doingr_r^)rb�codingrarczweb developerrrrrrer]rg�dev)zyeah codingzthis bug suckszelevations stuffzalmost donez
working on it�
dev_follow�idk�lydia)rY�calebbbb�yeah�mhm�aww�lydia_follow�=]r�spencer)rWr�rry�magus�spencer_followzu in?r~)zwe gotta go�maylenezgot tix?zchariot was insaneztell spencer)rrrwrv�lmao)ryr{r~rjzgot workrmz
should be offr�)r��nightr�zg'night)r��truer�r�r��maybe�what u doing laterr�)rwr�ryr{r�r
r�)�genericr�r�r�)rZrYrXrWr[�oh�so�hi)r]rhr^)znot much just bored�	nothingggzim tiredddd�homeworkzjust sitting here)r]rgr_)zyeah i work tonightzunfortunantly yeahz
yeah got work)z
nah im offznope free tonightrl)r�znot sure yetro)�
that suckszi know�sorry)r�
hahahahaharw�oh man)z	i love itr�zso dumb)�coolr{zwhat level are youzi should get back onzare u still playingz
sounds funr�)r�z
could workr�r�)r
�workingz	too tiredr�)zu doing anything later?zu wanna hang out?zwhat are u up to tonightr�)�oh hey againrZrYr�z	hey again)�night nightz	pe@ce bror��ttyl)r�r�
rotfllllll�EWWWWWr��ooo�or#z.>r��OMGz'you are the most horrible person i knowzHAHA COOOOOOOLzsmoke pot much?r��ahahaha�yumzlie to her!)rrw�omgr�r{r�)r�r�r�)�heyyrYzuh heyyrX�heyyyr�zhey urZ)z	whats up?r�zim boredr^r�)�chillin�
being lazyrdr�z
on myspacezso boredzjust woke up lolzeating something�flirt)	zyou're so hot caleb�mmmhz	thats hot�lol stopz
you're badr�z
seriously thoz
i like youzyou know you want to�flirt_follow)rr�:-)r��whateverzprove it�pics)zsend me one lolzpics or it didnt happenzgot any new ones?zmyspace doesnt count lolz	you firstzmaybe if you're nicez
haha nice try�pics_follow)r�jkjkr�rz
fine whatever�myspace)zcheck my myspacezi changed my layout againzmy top friends are stupidzcomment my picszwhats your myspace again�myspace_follow)rr��finer��bored)zim so boredzentertain mezsay something funnyzugh nothing to dozsomeone talk to me�bored_follow)rz	your turnzu first)rr�hahahaharrr�r�z:-D)r��stop�you're dumbr�r{r�)	r��ewwwrznice tryzyou wishr�r�r�z
you're so badr�)rrr�r�r��compliment_back)z	thanks :]r�r�zyou're sweetz
haha whatever)zwhat u doing later?�u busy tonight?zu wanna talk more?zim gonna be up late)r�r�rZrXzu there?)r�r�r��byeeer�)	r��samer�r�r�rrr~r�)r�r�r�r�c�d�||_||_t|�|_|d|_|jdk(r|j
|_n2|jdk(r|j|_n|j|_tt�|_|jdg�|_
|jdg�|_|jdd�|_|jdd	�|_|jd
g�|_|jdg�|_|jdd
�|_y)N�screen_name�
conan0ftheday�	magus5311�bands�	show_crew�friend_name�Caleb�	pct_multi皙�����?�flavor_phrases�topical_refs�	real_namerI)�personarr�style�key�CALEB�bank�MAGUS�SOErrB�statesrr�r��friendr��flavor�topicalr�)rr�rs   rrzPersonaActor.__init__�s��������
�!�%�(��
��=�)����8�8��&��
�
�D�I�
�X�X��
$��
�
�D�I����D�I�4?�@Q�4R����Y�Y�w��+��
����;��3����i�i�
�w�7������;��5����i�i� 0�"�5����y�y���4������;��3��rc�F�tj|j|�Sr4)r)�choicer)rrs  r�_pickzPersonaActor._pick�s���}�}�T�Y�Y�s�^�,�,rc� �|j|Sr4)r)r�senders  r�_statezPersonaActor._state�s���{�{�6�"�"rc��g}||dD]'}|ddk(rdnd}|j|�d|d����)dj|�S)N�role�userr��You�: �content�
)�append�join)r�history�n�lines�msgrs      r�_recent_contextzPersonaActor._recent_context�s]�����A�2�3�<�	6�C�!�&�k�V�3�7��D��L�L�D�6��C�	�N�#3�4�5�	6��y�y���rc��|D�cgc]}|ddk(s�|d��}}dj||d�j�Scc}w)Nrrr� )rr,)rrr�m�msgss     r�_last_user_msgszPersonaActor._last_user_msgs�sJ��&-�E���6��f�1D��)��E��E��x�x��a�R�S�	�"�(�(�*�*��Fs�
?�?c��|j�}|j|d�}|xjdz
c_||_t	j
d|�st	j
d|�r�d|_t	j
d|�st	j
d|�r&t	j
d|�rd	|_n^d
|_nVd|vrt	j
d|�rn;t	j
d
|�rd
|_nt	j
d|�rd	|_t	j
d|�rd|_t	j
d|�rd|_t	j
d|�rd|_t	j
d|�rd|_d}|jr+djd�|jD��}|d|�d�z
}t	j
||�rd|_t	j
d|�rd|_t	j
d|�sd |vrd!|_t	j
d"|�r%t|j��d#krd
|_yyy)$N�r!z\b(work|shift|job|schedule)\bz\b(work|shift|job)\b�workz0\b(no|nah|dont|not|off|free)\b.*\b(work|shift)\b�)\b(gotta|got|have to|need to)\b.*\bwork\b�\b(no|nah|dont|not|off|free)\bFT�?z\b(work|shift)\bz2\b(yeah|yep|yes|think so|probably|unfortunantly)\bz\b(nah|no|off|free)\b�
\bwhat time\b�timez,\b(tonight|later|hang out|come over|wanna)\b�plans�9\b(wow|warcraft|raid|guild|quest|grind|bot|talent|spec)\brzS\b(girl|girls|chick|chicks|hot|cute|flirt|hook.?up|date|dating|crush|her\b|she\b)\br�z;\b(show|concert|metal|hardcore|pit|mosh|band|tix|tickets)\b�|c3�K�|]8}tj|j�dj�����:y�w)rN)r'�escape�splitr,)�.0�bs  r�	<genexpr>z-PersonaActor._update_state.<locals>.<genexpr>s,����!V�a�"�)�)�A�G�G�I�a�L�,>�,>�,@�"A�!V�s�>Az|\b(z6|maylene|haste|chariot|norma|emery|legend|showbread)\br�z)\b(myspace|bulletin|comment|purevolume)\br��!\b(4chan|imagechan|explosm|/b/)\b�httpr�z\b(hey|sup|yo|hi)\b�)
r,r"rNrJr'�searchrDrEr�rr-r0rL)r�stater/rr,�ctx�band_pat�
band_namess        r�
_update_statezPersonaActor._update_state�s����
�
����"�"�7�A�.��
�
�
�a��
�#'�� �
�9�9�5�u�=����Kb�dg�Ah� �E�K��y�y�L�e�T�XZ�Xa�Xa�<�e�Y��9�9�>��F�).�E�&�)-�E�&����"�)�)�,?��"G�����P�RW�X�%)��"����3�U�;�%*��"�
�9�9�%�u�-� �E�K�
�9�9�D�e�L�!�E�K�
�9�9�Q�SX�Y��E�K�
�9�9�b��
�"�E�K�Q���:�:����!V�4�:�:�!V�V�J��4�
�|�+a�b�b�H�
�9�9�X�u�%�!�E�K�
�9�9�A�5�I�#�E�K�
�9�9�9�5�A�V�u�_� �E�K�
�9�9�+�U�3��E�K�K�M�8J�a�8O� �E�M�9P�3rc��|j�j�}|j�}|j|d�}|j||�ry|jdk(r\tjd|�rytjd|�rytjd|�ry	tjd
|�rytjd|�ry
tjd|�s|jdk(rd|vrytjd|�stjd|�ry|j�&|jdk(rtjd|�rytjd|�rytjd|�rt|j��dkrytjd|�s|dvry|jdk(rd|vstjd |�ry!|jdk(rtjd"|�ry#|jdk(rtjd$|�ry%|jdk(r|jd%k(ry%|jdk(rtjd&|�ry|jdk(r|jdk(rytjd'|�ry(tjd)|�ry*d|vr|j�y+y,tjd-|�ry.|jd/kDrtj�d0kry1|jdk(r.tj�d2krtjgd3��Sy4)5Nr$r�r�z/\b(lydia|dudesy|dudely|wife|marry|girlfriend)\br�z\b(spencer|magus|magus5311)\br�z8\b(code|coding|php|dev|elevations|bug|website|program)\br�z>\b(show|concert|maylene|chariot|haste|tix|tickets|metal|pit)\br�z<\b(bye|later|gtg|g2g|gotta go|see ya|cya|brb|bbl|bai|ttyl)\br�r)r*r(z\b(work|shift|job)\b.*\?r&r%z!\b(sucks|shit|damn|ugh|aw|that)\b�work_empathyz4\b(doing|up to|whatcha|what u|what are you|chu up)\br`�+\b(sup|yo|hey|hi|hello|wassup|what'?s up)\b��greet�#\b(lol|haha|rofl|lmao|hehe|rotfl)\b��=d�=p�xdrur�r5r4r�z:\b(stupid|dumb|awful|wtf|burned|owned|retard|idiot|suck)\br�zG\b(girl|girls|chick|chicks|hot|cute|flirt|hook.?up|date|dating|crush)\br�zn\b(show|concert|metal|hardcore|pit|mosh|band|tix|tickets|maylene|haste|chariot|norma|emery|legend|showbread)\br,rz.\b(come over|hang out|hangout|wanna|want to)\b�hangout�
work_followup�answer_questionz/^(yeah|yep|yup|true|same|word|k|kk|ok|okay)\.?$�agree�g�?�
push_convo�ffffff�?)r�r�rLr�)r,r%r"�_is_chaos_messagerr'r7rDrEr-r0rNr)r)rr/rr8r,�rawr9s       r�classifyzPersonaActor.classifys����
�
��"�"�$���j�j�l���"�"�7�A�.���!�!�#�u�-���8�8��&��y�y�K�U�S���y�y�9�5�A� ��y�y�T�V[�\���y�y�Q����
�9�9�T�V[�\��
�9�9�%�u�-��K�K�6�!�c�U�l��
�9�9�0�%�8�B�I�I�8�%�=
�����)�e�k�k�V�.C��	�	�0�%�I
�"�
�9�9�L�e�T��
�9�9�C�U�K�PS�TY�T_�T_�Ta�Pb�fg�Pg��
�9�9�;�U�C�u�Pb�Gb���8�8�{�"��%��2�9�9�Ei�kp�;q���8�8�{�"�r�y�y�I�5�(
���8�8�{�"�r�y�y�1{�~C�(D���8�8�{�"�u�{�{�g�'=���8�8�{�"�r�y�y�}��(
���8�8�{�"�u�{�{�g�'=��
�9�9�Q�SX�Y��
�9�9�F��N���%�<��!�!�-�&�$�
�9�9�G��O���:�:��>�f�m�m�o��4���8�8�{�"�v�}�}���'=��=�=�!D�E�E�rc��|r|jd�ry|D�cgc]}|j�s�|��}}t|�dk\r@td�|D��t|�z}|dk\rt|j	��dkrytjd|�rytjd	|�r/d
|vr+t|j	��dkrt|�dk\ry|dvrytjd|�ryycc}w)
uFStupid/all-caps/shock AIM messages — roll with it, don't get formal.r5Fr$c3�BK�|]}|j�s�d���y�w)r!N)r*)r1�cs  rr3z1PersonaActor._is_chaos_message.<locals>.<genexpr>_s����@�A�A�I�I�K�a�@�s����?�TzW\b(tits|boobs|boob|nipples|penis|cock|cocks|secks|sexy|dick|8=+|vag|pussy|ass\b|wtfh)\bz^[\W\d]*[a-zA-Z]{2,}[\W\d!]+$�!>
�dierr�r��burnr�r{rryrzz0(\(\s*\.\s*y\s*\.\s*\)|8=+|c=+8|=\)|=\(|=\]|=\[))r+�isalphar-�sumr0r'r7)rrOr,rS�letters�upper_ratios      rrNzPersonaActor._is_chaos_messageYs����c�n�n�V�,��!�1��Q�Y�Y�[�1�1��1��w�<�1���@��@�@�3�w�<�O�K��d�"�s�3�9�9�;�'7�1�'<��
�9�9�f��
��
�9�9�5�s�;��s�
�s�SV�S\�S\�S^�O_�cd�Od��3�x�1�}���c�c��
�9�9�H�%�P����#2s
�C<�C<c���tj�dkr|jd�gS|jd�g}tj�dkr |j|jd��|S)Ng333333�?rV皙�����?r\)r)rr�rr8r5s   r�
_gen_greetzPersonaActor._gen_greetps[���=�=�?�T�!��J�J�x�(�)�)����H�%�&���=�=�?�S� ��L�L����N�3�4��rc���|jd�g}tj�dkrF|jd�}|j�|dj�k7r|j|�|S)Nr�r�r�r)rr)r,r)rr5�follows   r�
_gen_chaoszPersonaActor._gen_chaosysY�����G�$�%���=�=�?�T�!��Z�Z��/�F��|�|�~��q����!1�1����V�$��rc��|jd�|jd�g}tj�dkr |j|jd��|S)Nr`rf�333333�?r��rr)rr_s   r�
_gen_activityzPersonaActor._gen_activity�sG�����J�'����4E�)F�G���=�=�?�S� ��L�L����K�0�1��rc�
�|j�}tjd|�rd|vrd|_|j	d�g}n�tjd|�rd|_|j	d�g}ndtj
�}|dkrd|_|j	d�g}n1|d	krd|_|j	d�g}n|j	d
�g}|jrgtj|jd�}||_tj
�dkr'|j|jd
�sd|��n|�tj
�dkr |j|j	d��|S)Nr'r(Frkz\b(yeah|yep|yes|def|for sure)\bTrir�rTrnrp��?�like�like r^r�)r,r'r7rErr)rrrGrr+)rr8r/r,r5�roll�ts       r�	_gen_workzPersonaActor._gen_work�s<���
�
���
�9�9�6��>�3�e�CS�!&�E���Z�Z�	�*�+�E�
�Y�Y�9�5�
A�!%�E���Z�Z�
�+�,�E��=�=�?�D��d�{�%)��"����J�/�0�����%*��"����I�.�/�����M�2�3������
�
�d�i�i��7�8�A��E�O��}�}���$�������V�0D�u�Q�C�[�!�L��=�=�?�S� ��L�L����K�0�1��rc���|jr
|j}n)tj|jd�}||_|j	d�sd|vr|nd|��g}|j
r=tj�dkr&|j
tjgd���tj�dkr |j
|jd��|S)	Nrprj�-rkri)zgotta leave soonrszsucks i know��������?r�)rGr)rrr+rErr)rr8rmr5s    r�	_gen_timezPersonaActor._gen_time�s����?�?����A��
�
�d�i�i��7�8�A��E�O��l�l�6�*�c�Q�h��e�A�3�K�H�����&�-�-�/�C�"7��L�L����'\�]�^��=�=�?�T�!��L�L����K�0�1��rc�F�|jd�g}|jr|j|j�n/|jr#|j|j	|�d�tj
�dkr |j|jd��|S)Nrqrrir�)rrGrrErrr)r_s   r�_gen_work_empathyzPersonaActor._gen_work_empathy�su�����L�)�*���?�?��L�L����)�
�
�
��L�L�����.�q�1�2��=�=�?�S� ��L�L����K�0�1��rc�V�tjd|j��r|j|�S|jdur%|jd�|j|�dgS|jdur"|jd�|jd�gS|j
||�S)Nr)TrirFrkr�)r'r7r,rrrErrn�rr8r/s   r�_gen_work_followupzPersonaActor._gen_work_followup�s���
�9�9�%�t�z�z�|�4��>�>�%�(�(�����%��J�J�z�*�D�N�N�5�,A�!�,D�E�E�����&��J�J�y�)�4�:�:�k�+B�C�C��~�~�e�T�*�*rc��|j�}|jdk(r�tjd|�rgd�Stjd|�rgd�Stjd|�rgd�Stjd|�r|j	|�Stj
�d	kr"|j
d
�|j
d�gSdd
gStjd|�rddgStjd|�rddgStjd|�rddgStjd|�r|j	|�Sddg}|S)Nr�z\bwho\b)r�r��whyz\bwhy\b)r��causezi dunno hahaz	\bwhere\b)�not surezmonroe mall?zwhere u thinkingz\bwhen\brir�r�r�zwhat do u thinkr{�whozi dont knowzjust becausezwhere u thinking?zhonestly not surezwhat do u think?)r,rr'r7rrr)r)rr8r/r,r5s     r�_gen_answer_questionz!PersonaActor._gen_answer_question�s"���
�
����8�8�{�"��y�y��U�+�2�2��y�y��U�+�@�@��y�y��u�-�G�G��y�y��e�,��~�~�e�,�,��}�}���$��
�
�9�-�t�z�z�.�/I�J�J�"�$5�6�6�
�9�9�Z��'���&�&�
�9�9�Z��'�!�>�2�2�
�9�9�\�5�)�� 3�4�4�
�9�9�[�%�(��>�>�%�(�(�$�&8�9���rc��|jd�g}tj�dkr |j|jd��|S)Nr�rqr�rf�rr5s  r�_gen_sarcasmzPersonaActor._gen_sarcasm�s;�����I�&�'���=�=�?�T�!��L�L����N�3�4��rc��|jr7tj�dkr tj|j�gS|jd�g}tj�dkr |j	|jd��|S)Nr�r�rer�)rr)rrrrs  r�_gen_absurdzPersonaActor._gen_absurd�se���;�;�6�=�=�?�T�1��M�M�$�+�+�.�/�/����H�%�&���=�=�?�S� ��L�L����N�3�4��rc�&�|jd�gS)Nr��r�rs r�	_gen_chanzPersonaActor._gen_chan�s���
�
�6�"�#�#rc��|jd�g}tj�dkr |j|jd��|S)Nrurirxrfrs  r�
_gen_laughzPersonaActor._gen_laugh��;�����G�$�%���=�=�?�S� ��L�L����N�3�4��rc�F�|jd�|jd�gS)Nrr�r�r�s r�_gen_wowzPersonaActor._gen_wow�����
�
�5�!�4�:�:�l�#;�<�<rc��|jd�g}tj�dkr |j|jd��|S)Nr�r�r�rfrs  r�
_gen_girlszPersonaActor._gen_girls�s;�����G�$�%���=�=�?�T�!��L�L����N�3�4��rc�*�|jd�g}|jrXtj�dkrAtj|j�}|j	|j��d��|jrYtj�dkrBtj|j�}|j	d|j��d��tj�dkr |j	|jd��|S)	Nr�rqz in?rM�dude z thorir�)rr�r)rrr,r�)rr5�name�bands    r�
_gen_showszPersonaActor._gen_shows�s������G�$�%���>�>�f�m�m�o��4��=�=����0�D��L�L�D�J�J�L�>��.�/��:�:�&�-�-�/�D�0��=�=����,�D��L�L�5������d�3�4��=�=�?�S� ��L�L����N�3�4��rc�F�|jd�|jd�gS)Nr�r�r�r�s r�_gen_devzPersonaActor._gen_devr�rc�F�|jd�|jd�gS)Nr�r�r�r�s r�
_gen_lydiazPersonaActor._gen_lydia
����
�
�7�#�T�Z�Z��%?�@�@rc�F�|jd�|jd�gS)Nr�r�r�r�s r�_gen_spencerzPersonaActor._gen_spencer
� ���
�
�9�%�t�z�z�2B�'C�D�Drc���|jduxrtj�dk}|rdnd}|j|�g}|r |j|jd��|S)NTg333333�?r�r�r�)rEr)rr)rr8�yes�poolr5s     r�_gen_hangoutzPersonaActor._gen_hangoutsY��� � ��,�F�����3�1F�� #�}������D�!�"����L�L����K�0�1��rc�&�|jd�gS�Nr�r��rr8s  r�	_gen_pushzPersonaActor._gen_pushs���
�
�;�'�(�(rc��|jdk(r�tj�}|dkr|j�S|dkr|j�S|dkrM|jrAdtj
|j�j
���|jd�gS|jdk(r|jr|j|�Stj
gd��g}|j|jd��|S)	Nr�rMr�rr�r�r%)r�r�r�r�r�r{)rr)r�r�r	rr,rrDrErrr)rr8rlr5s    r�_gen_genericzPersonaActor._gen_generics����8�8�{�"��=�=�?�D��d�{��'�'�)�)��d�{��(�(�*�*��c�z�d�l�l���
�
�d�l�l� ;� A� A� C�D�E�t�z�z�R]�G^�_�_��;�;�&� �U�%7�%7��>�>�%�(�(����Q�R�S��
���T�Z�Z��,�-��rc��|jd�g}|j|jd�xs|jd��d|_|S)Nr�rfr\T)rrrLr_s   r�_gen_return_after_gapz"PersonaActor._gen_return_after_gap*sD�����.�/�0��
���T�Z�Z� 1�2�P�d�j�j��6P�Q���
��rNc�����|r�j��S|r|dvr�j��Sid��fd��d��fd��d���fd��d��fd	��d
��fd��d���fd
��d���fd��d�j�d�j�d�j�d�j
�d�j�d�j�d�j�d�j�d�j�d�j��j��fd���fd��fd��fd���fd�d��}|j||d ��}|D�	cgc]&}	|	s�|	j�s�|	j���(}}	t|�d!kDr|dd!}nYt|�d"k(rK|d#vrGt!j ��j"kr&�j%d$�}
|
|vr|j'|
�|dd!Scc}	w)%N�rA�shortr�r`rAc�&���j��Sr4�r`r�s��r�<lambda>z'PersonaActor.generate.<locals>.<lambda>>����T�_�_�U�3�rr`c�&���j��Sr4�rgr�s��rr�z'PersonaActor.generate.<locals>.<lambda>?����� 2� 2�5� 9�rr%c�(���j���Sr4)rnrvs���rr�z'PersonaActor.generate.<locals>.<lambda>@s���D�N�N�5�$�7�rr*c�&���j��Sr4)rrr�s��rr�z'PersonaActor.generate.<locals>.<lambda>As���D�N�N�5�1�rr>c�&���j��Sr4)rtr�s��rr�z'PersonaActor.generate.<locals>.<lambda>Bs���D�$:�$:�5�$A�rrHc�(���j���Sr4)rwrvs���rr�z'PersonaActor.generate.<locals>.<lambda>Cs���T�%<�%<�U�D�%I�rrIc�(���j���Sr4�r}rvs���rr�z'PersonaActor.generate.<locals>.<lambda>D����t�'@�'@���'M�rrurr�r�r�r�r�r�r�r�c�&���j��Sr4)r�r�s��rr�z'PersonaActor.generate.<locals>.<lambda>P����t�0�0��7�rc�&���j��Sr4)r�r�s��rr�z'PersonaActor.generate.<locals>.<lambda>Qs���$�.�.��"7�rc�(���jd�gS�Nr�r�r�s�rr�z'PersonaActor.generate.<locals>.<lambda>R����D�J�J�u�-�.�rc�T��tjgd���jd�gS)N)r�r�r�zfor surer��r)rrr�s�rr�z'PersonaActor.generate.<locals>.<lambda>Ss#���f�m�m�,P�Q�SW�S]�S]�^i�Sj�k�rc�&���j��Sr4)r�r�s��rr�z'PersonaActor.generate.<locals>.<lambda>Tr�r)r�rGrLr�rJr�r�r6r!�r�rAr�)r`r�r�r�r�r�r�r�r�r�r�r�rcrr%r-r)r�rr�r�intentr/rr8�
fresh_session�	time_hint�buildersr5r6rbs` ` `      r�generatezPersonaActor.generate0s�����?�?�5�)�)���#L�L��-�-�e�4�4�
��3�
��9�
�
�7�
�
�1�	
�

�A�
�
�I�

�
�M�
�
�T�_�_�
�
�4�=�=�
�
�T�_�_�
�
�T�_�_�
�
�4�=�=�
�
�T�_�_�
�
�t�(�(�
�
�t�(�(�
� 
�d�&�&�!
�"
�D�N�N�#
�$�_�_�7�7�.�k�7�/
��2:����V�X�i�%8�9�;��$)�=�q�Q�1�7�7�9�����=��=��u�:��>��"�1�I�E�
��Z�1�_��/?�!?�F�M�M�O�VZ�Vd�Vd�Dd��Z�Z��,�F��U�"����V�$��R�a�y���>s�)G�1G�Gc��|dd}|jd�r|jd�dn|}|j|�}|j|||�|j	|||�}|j||||||�}	|	S)Nr$rz[Aboutr)r+r0rr<rPr�)
rrrr�r��last�
last_cleanr8r�r5s
          r�replyzPersonaActor.reply`s����r�{�9�%��-1�_�_�X�-F�T�Z�Z��%�b�)�D�
����F�#�����5�*�g�6����z�7�E�:���
�
�f�j�'�5�-�QZ�[���r�r�r8rr8r9r:)rr;r9r;)rr;r9rB)�)r�
list[dict]rrMr9r;)r6)r8rBr/r;rr�r9r:�r/r;rr�r8rBr9r;)rOr;r,r;r9rK�r8rBr9r<�r9r<�r8rBr/r;r9r<�FN�r�r;r/r;rr�r8rBr�rKr�rFr9r<)NF)
rr;rr�r�rFr�rKr9r<))r=r>r?�__doc__�TIMESrrr�
SIDE_CHICKrrrrr"r<rPrNr`rcrgrnrrrtrwr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r@rrrQrQEs���W�d�E�b
��
�b
�	�G�b
�	�	
�b
�0	�W�1b
�2	�_�3b
�4	�H�5b
�6	�T�7b
�8	��9b
�:	�U�;b
�<	�G�=b
�>	�g�?b
�@	�
�Ab
�N	�W�Ob
�P	�	
�Qb
�d	�N�eb
�f	�

�gb
�B	�
�Cb
�TT�F�

�S�D�

�
�K�
�
�.
�sb
�E�H
��Q�
��H�
�	�
�
�	�D�.�1�
�	�d�
�	�t�U�m�
�	�:�
�	��v��
� 	�@�!
�"	�7�J�/�#
�$	�M�%
�&	��.�1�'
�(	�<�)
�*	�5�+
�,	�)�:�6�-
�.	�M�?�3�/
�0	�6�1
�2?�*�G�4�E���,�9
�E�>?��N�?��8�?�	�
�?�	�B�?�	�R�?�	�G�?�	�A�?�	��?�	�7�?� 	�:�!?�"	�;�#?�$	�M�%?�&	�,�l�;�'?�(	�;�)?�*	�6�+?�,	�
�-?�6	�
�7?�D=�
�(
�o?�C�Be��	
�e�	�S�e�	�	
�e�,	�W�-e�.	�

�/e�D	�L�Ee�F	�
�Ge�X	�H�Ye�Z	�
�[e�h	�:�ie�j	�
�ke�x	�7�ye�z	�Q�{e�|	�J�}e�~	�

�e�T	�<�Ue�V	�
�We�d
�H�A�

�ue�J�N4�(-�#� �+�3!�jH�T�.����6��+��2��$��=��
�=�A�E��)�
��$� $�.��.��.��	.�
!�.��
.��.�
�.�h!%�#�������	�
��
�
rrQc
���eZdZdZidgd��dgd��dgd��dgd	��d
gd��dgd
��dgd��dgd��dgd��dgd��dgd��dgd��dgd��dgd��dgd��d gd!��d"gd#��gd$�gd%�gd&�gd'�gd(�gd)�gd*�gd+�d,��Zd:�fd-�Zd;d.�Zd<d/�Zd<d0�Zd<d1�Z	d<d2�Z
d<d3�Zd<d4�Zd<d5�Z
d=d6�Zd<d7�Zd>d8�Z		d?													d@d9�Z�xZS)A�	WifeActoruRLydia — future wife energy. Warm, real, best-friend closeness. NOT a side chick.rV)rYr��	hey calebrZr�r�zmhm heyr\)rh�	what's upz
how are yar�zwhat u up tor`)	raz
just got homez
study hallr�zat joy'szchurch stuffzschool was longr�rdrf)r]rgrhz
how about your)zthanks buddyz
you too calebzsee you tomorrow calebzyour welcome�anytimez	i got you�suhweetzaw thats nice of you�
friend_follow)r�rr�r~�school)zyeah school tomorrowzew school tomorrowzstudy hall was boringzschool was alrightzohmygosh yes�
school_follow)rrrzi know rightr��church)zyouth group was funzchurch was goodzi was at churchzwe had youth tonight�joy)zjoy and i might gozi'm at joy'szjoy's leaving tomorrowz
me and joyzcarpool with joy�rides)z!i feel bad i cant give you a ridezwish i could helpz
maybe joy canz!think you could find a ride home?zi can ask my mom�music)z relient k used to be my favoritezi love mewithoutYouzhave you heard mutemathzthat band is goodru)rrrr�r�r{�niiicerx)�calebr�r�zso truer�)z
g'night caleb�	goodnightzsee ya tomorrowzi'm gonna go to sleepr��night_follow)r��	take carezsee youzsweet dreams�deep)z5well caleb i dont really know what to say to all thatzi guess i'll just say coolzthat's really sweetzi appreciate thatzyou're a good friend)z
i am so sorryzi feel like a terrible friendzaw i'm sorryr�)zi love poptartsz
tater tots�puddingzi love food�mmm)r�r�r�zguess so�probablyzi dont know yetr�)r�zwhat are your plans tomorrowr�)zsee ya calebr�zk i'm gonna go�alrightyr�)rz
oh my gosh�you're ridiculousz
nice calebzmhm ok)rr�r��sure)r�r�rZr�)r��foodr�r�r�r�r�r�c���t�|�||�|j|_|j	dd�|_|j	dd�|_y)Nr�r�r��Lydia)�superr�LYDIArrr�r��rr�r�	__class__s   �rrzWifeActor.__init__�sA���
����%�(��J�J��	����;��5������;��8��rc��|j�j�}|j||�rytjd|�rytjd|�rytjd|�rytjd|�ry	tjd
|�rytjd|�ry
tjd|�rytjd|�rytjd|�rt|j
��dkrytjd|�rytjd|�rytjd|�ryd|vrytjd|�ryy) Nr��K\b(bye|later|gtg|g2g|gotta go|see ya|cya|brb|bbl|ttyl|goodnight|g'?night)\br�z\b(ride|drive|pick.?up|car)\br�z	\b(joy)\br�z$\b(church|youth|youth group|bible)\br�z.\b(school|homework|study hall|class|teacher)\br�z8\b(mutemath|relient|mewithout|band|music|show|concert)\br�z\b(sorry|my bad|feel bad)\br�z.\b(friend|buddy|thanks|thank you|appreciate)\brr?r�rA�-\b(doing|up to|whatcha|what u|what are you)\br`�\b(lol|haha|rofl|lmao|hehe)\bruz9\b(love|marry|married|together|forever|heart|mean|care)\br�r(rI�*^(yeah|yep|yup|true|same|k|kk|ok|okay)\.?$rJr��r,r%rNr'r7r-r0�rr/rr8r,s     rrPzWifeActor.classify�s:���
�
��"�"�$���!�!�$��.��
�9�9�c�ej�k��
�9�9�5�u�=��
�9�9�\�5�)��
�9�9�<�e�D��
�9�9�F��N��
�9�9�P�RW�X��
�9�9�3�U�;��
�9�9�F��N��
�9�9�C�U�K�PS�TY�T_�T_�Ta�Pb�fg�Pg��
�9�9�E�u�M��
�9�9�5�u�=��
�9�9�Q�SX�Y���%�<�$�
�9�9�B�E�J��rc�F�|jd�|jd�gS)Nrr�r�r�s r�_gen_friendzWifeActor._gen_friend�����
�
�8�$�d�j�j��&A�B�Brc�F�|jd�|jd�gS)Nr�rfr�r�s r�_gen_joyzWifeActor._gen_joy�s ���
�
�5�!�4�:�:�.?�#@�A�Arc��|jd�tj�dkr|jd�gS|jd�gS)Nr�r^r�r��rr)r�s r�
_gen_rideszWifeActor._gen_rides��A���
�
�7�#�F�M�M�O�c�<Q�T�Z�Z��%8�s�s�W[�Wa�Wa�bq�Wr�s�src�F�|jd�|jd�gS)Nr�r\r�r�s r�_gen_churchzWifeActor._gen_church�s���
�
�8�$�d�j�j��&@�A�Arc�F�|jd�|jd�gS)Nr�r�r�r�s r�_gen_schoolzWifeActor._gen_school�rrc�F�|jd�|jd�gS)Nr�rxr�r�s r�
_gen_musiczWifeActor._gen_musicr�rc�F�|jd�|jd�gS)Nr�r�r�r�s r�	_gen_deepzWifeActor._gen_deeps���
�
�6�"�D�J�J��$?�@�@rc�F�|jd�|jd�gS�Nr�r�r�r�s  r�
_gen_nightzWifeActor._gen_nightr�rc��|jd�tj�dkr|jd�gS|jd�gS)Nr�rer�r�rr�s r�
_gen_sorryzWifeActor._gen_sorryrrc��|j�}tjd|�rK|jd�t	j�dkr|jd�gS|jd�gStjd|�r"|jd�|jd�gS|jd�|jd	�gS)
Nz"\b(tomorrow|tonight|later|plans)\br`r^r�r��\b(how are|how u|how r u)\brfr�r\)r,r'r7rr)�rr8r/r,s    rr}zWifeActor._gen_answer_questions����
�
���
�9�9�:�E�B��J�J�z�*�����SV�AV�D�J�J�u�,=�x�x�\`�\f�\f�gv�\w�x�x�
�9�9�3�U�;��J�J�z�*�D�J�J�7H�,I�J�J��
�
�9�%�t�z�z�.�'A�B�Brc�����|r�j��Sid��fd��d��fd��d�j�d�j�d�j�d�j�d	�j
�d
�j�d�j�d�j�d
�j�d�j�d��fd��d�fd��d���fd��d�fd��}|j||d��}|D�	cgc]&}	|	s�|	j�s�|	j���(}}	t|�dkDr|dd}nYt|�dk(rK|dvrGtj��jkr&�j!d�}
|
|vr|j#|
�|ddScc}	w)NrAc�&���j��Sr4r�r�s��rr�z$WifeActor.generate.<locals>.<lambda>"r�rr`c�&���j��Sr4r�r�s��rr�z$WifeActor.generate.<locals>.<lambda>#r�rrr�r�r�r�r�r�r�rur�r�c�&���j��Sr4�rr�s��rr�z$WifeActor.generate.<locals>.<lambda>.����4�?�?�5�1�rrJc�H���jd��jd�gS�Nr�r�r�r�s�rr�z$WifeActor.generate.<locals>.<lambda>/s���d�j�j��3�T�Z�Z��5L�M�rrIc�(���j���Sr4r�rvs���rr�z$WifeActor.generate.<locals>.<lambda>0r�rr�c�H���jd��jd�gS�Nr�r\r�r�s�rr�z$WifeActor.generate.<locals>.<lambda>1�����
�
�9� 5�t�z�z�.�7Q�R�rr6r!r�r\)r`rrrr
rrrrr�rcrr%r-r)r�rrr�s` ` `      rr�zWifeActor.generates������?�?�5�)�)�
��3�
��9�
�
�d�&�&�
�
�4�=�=�	
�

�T�_�_�
�
�d�&�&�

�
�d�&�&�
�
�T�_�_�
�
�D�N�N�
�
�T�_�_�
�
�T�_�_�
�
�T�_�_�
�
�1�
�
�M�
�
�M�
� 
�R�!
��$:����V�X�i�%8�9�;��$)�=�q�Q�1�7�7�9�����=��=��u�:��>��"�1�I�E�
��Z�1�_��/?�!?�F�M�M�O�VZ�Vd�Vd�Dd��Z�Z��/�F��U�"����V�$��R�a�y���>s�"F�*F�;Fr�r�r�r�r�r�r�)r=r>r?r�r�rrPrrrr
rrrrrr}r��
__classcell__�r�s@rr�r�qs����\�U
��P�U
��]�U
�	�

�U
�	�S�U
�	�	
�U
�2	�:�3U
�4	�
�5U
�B	�A�CU
�D	�
�EU
�P	�
�QU
�^	�
�_U
�l	�
�mU
�x	�Q�yU
�z	�C�{U
�|	�
�}U
�J	�F�KU
�L	�
�MU
�Zb�R�^�^�M�T�<�H�iU
�E�n9� �DC�B�t�B�C�A�A�A�t�C�$� $�%��%��%��	%�
!�%��
%��%�
�%rr�c
���eZdZdZidgd��dgd��dgd��dgd	��d
gd��dgd
��dgd��dgd��dgd��dgd��dgd��dgd��dgd��dddg�dgd ��d!gd"��d#gd$��gd%�gd&�d'd(ggd)�gd*�gd+�gd,�gd-�gd.�d/d0ggd1�d2��Zd?�fd3�Zd@d4�ZdAd5�ZdAd6�ZdAd7�Z	dAd8�Z
dAd9�ZdAd:�ZdAd;�Z
dBd<�ZdCd=�Z		dD													dEd>�Z�xZS)F�MentorActoruSDamion — older mentor / dad energy. Life advice, work wisdom, faith when it fits.rV)r�rYrZzhow's it goingr[r�r\)zeverything ok?zhow's work?zwhat's on your mind?z
talk to mer`)z
at the officezjust got back from lunchzwrapping up some emailzin meetings most of the dayzworking on a few thingszpretty busy but i'm hererf)zwhat's going on with you?zhow are you holding up?zwhat do you need?�advice)zone thing at a timez%start with what you can control todayz"don't borrow trouble from tomorrowz&character matters more than the momentzslow down and think it throughz(you already know what the right thing isz"pride is usually what's in the wayz#finish what's in front of you first�
advice_follow)zthen we can talk about the restzyou're smarter than you thinkzi believe in you on thiszdoes that make sense?r%)z%tell me what the deadline actually iszdo the hard part firstu3email me if you're stuck — don't spin on it alonez-half a day is fine if you're honest about whyzquality beats speed every timeu$you're learning — that's the point�work_follow)zwhat's blocking you?zshow me what you've got so farzwe'll figure it out�faith)zgive it to God and do your partzglory in the small wins tooz!faith without action is just talkz6sometimes the answer is just be faithful where you areu,don't perform for people — do what's right�faith_follow)zyou know what i meanu"that's not a sermon — just truthzkeep your heart right�stress)�
i hear youu/that's a lot — i'm not gonna pretend it isn'tz!breathe first, panic second neveru4money stuff is scary at your age — it gets clearerz)you're not failing just because it's hard�
stress_follow)z$what's the actual problem right now?zlet's break it downzi've got your back on this�relationship)uQtreat people the way you'd want to be treated — sounds simple, most people dontzhonesty early saves pain laterz7if you love her, act like it when it's inconvenient tooz.don't make big decisions when you're exhaustedu=friends like spencer are gold — don't take that for granted�relationship_followzwhat's really going on?ztalk to me straight�	encourage)zproud of you for even askingz%you've handled harder stuff than thiszkeep showing upzthat's growth right thereuKyou're gonna be fine — not because it's easy, because you're not quitting�encourage_follow)�	seriouslyz	i mean itzdon't forget thatru)rzthat's funnyr�zyou're something elsezfair enough)zbut seriously thoughzok ok�alright)zthanks for telling me thatzthat took guts to say out loudz!i'm glad you came to me with thisz/you don't have to have it all figured out at 17z-being honest with yourself is half the battlez what do you think you should do?zhow can i help?)z
get some restzgoodnight calebusleep on it — morning helpsztalk tomorrow if you need to)zpraying for youzyou're not alone in thiszi'm here)r�r/ztell me morezgo on�mm�right)zwhat's really bothering you?zhow's that project coming?zyou eating today?zanything i can pray for?)zlater calebz	talk soonz
hang in therez	god blessr�)zhaha okr�zalright thenzonly youubut for real — you ok?zwhat's up though)r�uhey — been thinking about yourZr[)rxr��deep_followr�r�r�r�r�r�r�r�c���t�|�||�|j|_|j	dd�|_|j	dd�|_y)Nr�g�������?r��Damion)r�r�MENTORrrr�r�r�s   �rrzMentorActor.__init__�sA���
����%�(��K�K��	����;��5������;��9��rc���|j�j�}|j||�rytjd|�rytjd|�rytjd|�rytjd|�ry	tjd
|�rytjd|�ry
tjd|�rytjd|�rt|j
��dkrytjd|�rytjd|�rytjd|�ryd|vrytjd|�ryy)Nr�r�r�z<\b(pray|prayer|god|church|faith|bible|sin|glory|christian)\br,zZ\b(work|job|office|elevations|code|coding|program|project|deadline|boss|pay|paid|laptop)\br%z^\b(stressed|overwhelmed|scared|worried|anxious|depressed|tired|exhausted|cant|can't|help me)\br.zX\b(girl|girlfriend|lydia|love|relationship|friend|spencer|marry|marriage|fight|mad at)\br1zh\b(advice|should i|what do i|what should|dont know|don't know|confused|lost|stuck|life|future|purpose)\br)z7\b(thank|thanks|appreciate|mean a lot|needed to hear)\br3r?r�rAz:\b(doing|up to|whatcha|what u|how are you|how r u|how u)\br`r�ruz>\b(scared|honest|real talk|deep|feel like|i feel|never told)\br�r(rIr�rJr�r�r�s     rrPzMentorActor.classify�s3���
�
��"�"�$���!�!�$��.��
�9�9�c�ej�k��
�9�9�T�V[�\��
�9�9�r�ty�z��
�9�9�v�x}�~��
�9�9�p�rw�x�!�
�9�9�w��
��
�9�9�O�QV�W��
�9�9�C�U�K�PS�TY�T_�T_�Ta�Pb�fg�Pg��
�9�9�R�TY�Z��
�9�9�5�u�=��
�9�9�V�X]�^���%�<�$�
�9�9�B�E�J��rc�F�|jd�|jd�gS)Nr)r*r�r�s r�_gen_advicezMentorActor._gen_advicerrc�F�|jd�|jd�gS)Nr%r+r�r�s rrnzMentorActor._gen_work����
�
�6�"�D�J�J�}�$=�>�>rc�F�|jd�|jd�gS)Nr,r-r�r�s r�
_gen_faithzMentorActor._gen_faith	r�rc�F�|jd�|jd�gS)Nr.r0r�r�s r�_gen_stresszMentorActor._gen_stressrrc�F�|jd�|jd�gS)Nr1r2r�r�s r�_gen_relationshipzMentorActor._gen_relationships ���
�
�>�*�D�J�J�7L�,M�N�Nrc�F�|jd�|jd�gS)Nr3r4r�r�s r�_gen_encouragezMentorActor._gen_encourages ���
�
�;�'����4F�)G�H�Hrc�F�|jd�|jd�gS)Nr�r9r�r�s rrzMentorActor._gen_deeprArc�F�|jd�|jd�gSrr�r�s  rrzMentorActor._gen_nightr�rc��|j�}tjd|�r|j�Stjd|�r"|j	d�|j	d�gStjd|�r"|j	d�|j	d�gS|j	d�|j	d	�gS)
Nz-\b(should i|what do i|what should|how do i)\brr`rfz\b(why|what happened)\br�r*r)r\)r,r'r7r?rrs    rr}z MentorActor._gen_answer_questions����
�
���
�9�9�E�u�M��#�#�%�%�
�9�9�3�U�;��J�J�z�*�D�J�J�7H�,I�J�J�
�9�9�/��7��J�J�y�)�4�:�:�o�+F�G�G��
�
�8�$�d�j�j��&@�A�Arc������|r�j��S|r|dvr�j��S��fd���fd��j�j�j�j
�j�j�j�j�j��fd��fd����fd��fd�d�}|j||d	��}|D�	cgc]&}	|	s�|	j�s�|	j���(}}	t|�d
kDr|dd
}nYt|�dk(rK|dvrGtj��jkr&�j!d
�}
|
|vr|j#|
�|dd
Scc}	w)Nr�c�&���j��Sr4r�r�s��rr�z&MentorActor.generate.<locals>.<lambda>3r�rc�&���j��Sr4r�r�s��rr�z&MentorActor.generate.<locals>.<lambda>4r�rc�&���j��Sr4rr�s��rr�z&MentorActor.generate.<locals>.<lambda>>rrc�H���jd��jd�gS)Nr3r�r�r�s�rr�z&MentorActor.generate.<locals>.<lambda>?s���d�j�j��5�t�z�z�+�7N�O�rc�(���j���Sr4r�rvs���rr�z&MentorActor.generate.<locals>.<lambda>@r�rc�H���jd��jd�gSr r�r�s�rr�z&MentorActor.generate.<locals>.<lambda>As����
�
�9� 5�t�z�z�+�7N�O�r)rAr`r)r%r,r.r1r3r�rur�r�rJrIr�r�r6r!r�r\)r`r�r?rnrCrErGrIrr�rcrr%r-r)r�rrr�s` ` `      rr�zMentorActor.generate%sB�����?�?�5�)�)���#L�L��-�-�e�4�4�3�9��&�&��N�N��_�_��&�&� �2�2��,�,��N�N��_�_��_�_�1�O�M�O�
��":����V�X�i�%8�9�;��$)�=�q�Q�1�7�7�9�����=��=��u�:��>��"�1�I�E�
��Z�1�_��/?�!?�F�M�M�O�VZ�Vd�Vd�Dd��Z�Z��/�F��U�"����V�$��R�a�y���>s�E.�E.�(E.r�r�r�r�r�r�r�)r=r>r?r�r<rrPr?rnrCrErGrIrrr}r�r%r&s@rr(r(>s���]�W��
�W�	�
�W�	�
�W�.	�
�/W�8	�	
�9W�L	�
�MW�X	�
�YW�h	�
�iW�r	�
�sW�@	�
�AW�J	�
�KW�X	�
�YW�b	�
�cW�p	�%�!� 
�qW�x	�
�yW�F	�
�GW�P	�\�QW�RE�
�
/��
�
�
�

�
�W�
�4�5G�H�^�mW�F�r:�!�FC�?�A�C�O�I�?�A�B� $� $�&��&��&��	&�
!�&��
&��&�
�&rr(c�|��eZdZdZd
�fd�Zdd�Zdd�Zdd�Zdd�Zdd�Z	d
d�Z
		d													dd	�Z�xZS)�SideChickActoruACasual flirty AIM girl — side piece energy, not a close friend.c�v��t�|�||�|j|_|j	dd�|_y)Nr�ri)r�rr�rrr�r�s   �rrzSideChickActor.__init__Qs/���
����%�(��O�O��	����;��4��rc�D�|j�j�}|j�}|j||�rytjd|�rytjd|�rytjd|�rytjd|�ry	tjd
|�rytjd|�rt|j
��d
krytjd|�rytjd|�s|dvryd|vrytjd|�ry|jdkDr.tj�dkrtjgd��Stj�dkrtjgd��Sy)Nr�z>\b(bye|later|gtg|g2g|gotta go|see ya|cya|brb|bbl|ttyl|night)\br�z7\b(pic|pics|picture|photo|n00d|nude|send|show me|cam)\br�z7\b(myspace|layout|comment|top 8|top friends|bulletin)\br�z6\b(hot|sexy|cute|pretty|beautiful|fine af|babe|baby)\br�z#\b(bored|nothing to do|entertain)\br�z0\b(sup|yo|hey|hi|hello|wassup|what'?s up|heyy)\br�rAr�r`rBrCrur(rIr�rJrKrM)r�r�r�re)r�r�r�r�)
r,r%rNr'r7r-r0rNr)r)rr/rr8r,rOs      rrPzSideChickActor.classifyVsM���
�
��"�"�$���j�j�l���!�!�#�u�-��
�9�9�V�X]�^��
�9�9�O�QV�W��
�9�9�O�QV�W��
�9�9�N�PU�V��
�9�9�;�U�C��
�9�9�H�%�P�UX�Y^�Yd�Yd�Yf�Ug�kl�Ul��
�9�9�E�u�M��
�9�9�;�U�C�u�Pb�Gb���%�<�$�
�9�9�B�E�J���:�:��>�f�m�m�o��4��=�=�!@�A�A��=�=�?�S� ��=�=�!>�?�?�rc��|jd�g}tj�dkr |j|jd��|S)Nr�rir�rfrs  r�
_gen_flirtzSideChickActor._gen_flirtvr�rc��|jd�g}tj�dkr |j|jd��|S)Nr�rqr�rfrs  r�	_gen_picszSideChickActor._gen_pics|s;�����F�#�$���=�=�?�T�!��L�L����M�2�3��rc�F�|jd�|jd�gS)Nr�r�r�r�s r�_gen_myspacezSideChickActor._gen_myspace�r�rc�F�|jd�|jd�gS)Nr�r�r�r�s r�
_gen_boredzSideChickActor._gen_bored�r�rc��|j�}tjd|�r#|jj	dd�}d|��dgStjd|�rddgStjd	|�r|j|�Stjd
|�rgd�St
jgd��|jd
�gS)Nz\b(how old|age)\b�age�zi'm rz\b(where|live)\bzidk does it matter lolzsame area basicallyz\b(what.*doing|up to)\bz!\b(single|gf|girlfriend|dating)\b)zwhy do you wanna know lolr�z
not really)r�r�rryr\)	r,r'r7rrrgr)rr)rr8r/r,ras     rr}z#SideChickActor._gen_answer_question�s����
�
���
�9�9�)�5�1��*�*�.�.���+�C��3�%�L�%�(�(�
�9�9�(�%�0�,�.C�D�D�
�9�9�/��7��%�%�e�,�,�
�9�9�9�5�A�G�G��
�
�=�>��
�
�>�@Z�[�[rc�����|r�j��S|r|dvr�j��S��fd���fd��j�j�j�j
�j�j��fd��fd��fd��fd��fd����fd	��fd
�d�}|j||d��}|D�	cgc]&}	|	s�|	j�s�|	j���(}}	t|�d
kDr|dd
}nYt|�dk(rK|dvrGtj��jkr&�jd�}
|
|vr|j|
�|dd
Scc}	w)Nr�c�&���j��Sr4r�r�s��rr�z)SideChickActor.generate.<locals>.<lambda>�r�rc�&���j��Sr4r�r�s��rr�z)SideChickActor.generate.<locals>.<lambda>�r�rc�&���j��Sr4r�r�s��rr�z)SideChickActor.generate.<locals>.<lambda>�s���t�1�1�%�8�rc�(���jd�gSr�r�r�s�rr�z)SideChickActor.generate.<locals>.<lambda>�s���4�:�:�k�#:�";�rc�(���jd�gSr�r�r�s�rr�z)SideChickActor.generate.<locals>.<lambda>�s���$�*�*�[�"9�!:�rc�(���jd�gSr�r�r�s�rr�z)SideChickActor.generate.<locals>.<lambda>�r�rc�T��tjgd���jd�gS)N)r�r�rr�r�r�r�s�rr�z)SideChickActor.generate.<locals>.<lambda>�s ���f�m�m�,K�L�d�j�j�Yd�Ne�f�rc�(���j���Sr4r�rvs���rr�z)SideChickActor.generate.<locals>.<lambda>�r�rc�H���jd��jd�gSr#r�r�s�rr�z)SideChickActor.generate.<locals>.<lambda>�r$r)rAr`r�r�r�r�rur�rGrLr�r�rJrIr�r�r6r!r�r\)r`r�rYr[r]r_r�rcrr%r-r)r�rrr�s` ` `      rr�zSideChickActor.generate�s0�����?�?�5�)�)���#L�L��-�-�e�4�4�3�9��_�_��N�N��(�(��_�_��_�_��_�_�8�;�:�.�f�M�R�
��":����V�X�i�%8�9�;��$)�=�q�Q�1�7�7�9�����=��=��u�:��>��"�1�I�E�
��Z�1�_��/?�!?�F�M�M�O�VZ�Vd�Vd�Dd��Z�Z��/�F��U�"����V�$��R�a�y���>s�:E�E�Er�r�r�r�r�r�)
r=r>r?r�rrPrYr[r]r_r}r�r%r&s@rrUrUNs~���K�5�
�@��E�A�\�&$� $�&��&��&��	&�
!�&��
&��&�
�&rrUc	��|jd�xsi}|s#|jd�s|jd�sydg}|jd�xs|jd�}|r|jd|���|jd	�xs"|jd	g�D�cgc]}d
|i��c}}|rJ|ddD�cgc]}t|t�r|d
n|��}}|jd
dj	|����|jd�xsi}|jd�xs|jd�}	|	r|jd|	���|jd�xsgddD]}
|jd|
����|jd�xsi}|jd�xsi}|rJ|jd�t|j
��ddD]\}
}|jd|����nQ|rO|jd�t|j
��ddD]\}}|jd|�d|dd����!|jd�xs|jd�xsg}|r2|jd�|ddD]}|jd|dd����|jd�xsi}|rV|jd�t|j
��ddD]&\}}|s�	|jd|�d|d dd�d!���(|jd"�xs|jd"�xsg}|r�|jd#�|ddD]s}|jd$d�}|jd%g�}t|t
�rd&j	|dd�}nt|�}|jd'|dd(�d)|dd*����ud+j	|�d+zScc}wcc}w),uURender mined archive context for the LLM — who they know, how they talk, real life.�deep_context�life_details�peoplerIuKYOUR WORLD (from real AIM logs — live in this, don't recite it verbatim):�personality_summary�deep_personalityz- Personality: �personality_traits�traitNr�z- Core traits: �, �relationship_with_caleb�dynamicz- You and Caleb: �notesr6u  · �social_rolesz=- People you actually know (mention naturally when relevant):rUz- People from your life:r�Zz@- Real details from YOUR messages (use as memory, not a script):�x�topics_with_quotesz.- Topics you actually talked about with Caleb:z: e.g. "r�"�
scene_samplesuJ- How you actually talk (rhythm reference — write NEW lines like these):r�	assistantz | u  · Caleb: �Fu
 → You: �dr)rr�
isinstancer8r�list�itemsr;)r�rr�r�summaryrm�traits�names�rel�rel_text�note�rolesrp�_key�descr�r9�life�detail�topicsrD�quotes�scenes�scener�replies�	reply_strs                           r�format_deep_contextr��s����;�;�~�&�,�"�D���	�	�.�1�%�)�)�H�:M��
Z�[�E��h�h�,�-�N����;M�1N�G��
����w�i�0�1�
�X�X�*�
+�
j�e�i�i�Pd�fh�Fi�/j���!��/j�F�
�CI�"�1�:�N�a�z�!�T�2��7���9�N��N�
����t�y�y��'7�&8�9�:�
�(�(�,�
-�
3��C��y�y�2�3�I�s�w�w�y�7I�H��
���(��
�3�4�����!�'�R��!�,�%��
���u�T�F�^�$�%�
�H�H�^�$�*��E�
�Y�Y�x�
 �
&�B�F��
���T�U��u�{�{�}�-�b�q�1�	)�J�D�$��L�L�5����(�	)�	�
���/�0��f�l�l�n�-�b�q�1�	5�I�D�#��L�L�5���b��S�b��
�3�4�	5��8�8�N�#�F�u�y�y��'@�F�B�D��
���W�X��2�A�h�	1�F��L�L�5������/�0�	1��X�X�*�
+�
1�r�F�
�
���E�F�!�&�,�,�.�1�"�1�5�	I�M�E�6�����u�U�G�9�V�A�Y�s��^�4D�B�G�H�	I��X�X�o�
&�
J�%�)�)�O�*D�
J��F�
�
���a�b��B�Q�Z�	P�E��9�9�V�R�(�D��i�i��R�0�G��'�4�(�!�J�J�w�r��{�3�	���L�	��L�L�<��S�b�	�{�*�Y�t��_�<M�N�O�	P��9�9�U��d�"�"��a0k��Ns�O�6Oc��	�|d}|jdd�}|jdd�}|jdd�}|jdg�dd	}|D�cgc]}|�d
|d�d|�d
|d
����}}|jdg�dd}	dj|	r|	ddn|jdg�dd�}
dj|jdg��}dj|jdg��}|jdd�}
|jdd�}|jd�dk(xs|dk(}|jd�dk(xs|dk(}|jd�dk(xs|jd�dk(}|jd�dk(xs|jd�dk(}|jd�dk(xs|jd�dk(}|jd�d k(xs|jd�d k(}|r&d!|�d"�}|�d#|�d$|jd%d&��d'|�d(�}�n|r1d)|�d"�}|�d#|�d*|�d+|�d,�}|jd-d�}|r�||�d�z
}n�|rO|jd.d�}|rd/|�d"�nd}d0|�d"|��}|�d#|�d*|�d1|�d2�}|jd-d�}|r�||�d�z
}n�|r |rd3|�d"�nd}d4|�|��}|�d#|�d*|�d5|�d6�}nm|r.d7|�d"�}|�d#|�d*|�d8�}|jd-d�}|rF||�d�z
}n=|r+d9|�d:�}|�d#|�d;�}|jdd�}|r||�d�z
}nd4|��}|�d#|�d*|�d<�}|
r||
�d�z
}|rd=|�d�nd}d}d}|r�|jd>d�}|r0|jd?g�}|rdj|�nd@} dA|�dB| �dC�}|jdDi�}!|!r,dEdjdF�|!j�D��zdz}d}"|rdG|�d�}"d}#|s|jd�dk(rdH}#|rdI|�dJ|�dK�}$dL|�dM|�dN�}%nf|rdO|�dP|�dQ�}$dL|�dR|�dN�}%nQ|rdO|�dS|�dT�}$dU}#dV|�dW|�dN�}%n:|rdO|�dX�}$dY}#dL|�dZ|�dN�}%n&|rdO|�d[|�d\�}$d]}#d^|�dW|�dN�}%nd_|�d`�}$dL|�dZ|�dN�}%t||�}&|sdandb|�dc�}'d}(|rdd}(|�|"�|#�d|&�|'�de|$�|�|�|�df|(�dg|jdhdi��dj|�dkt	dl�j|ddl��dm|
�dn|%��Scc}w)oN�display_namer�rIr�r�ra��examples�rrrr�sample_messages�ru��phrasesr�r��	backstory�humor_styler�r��Spencer�
soewaslike�Erica�persona_kind�
side_chick�wife�mentorr�z!You are Spencer (AIM screen name �)z, age zN, AIM chatting with your best friend in 2007.
You've known him since you were �friend_since_ager6z. His name is ui but you almost NEVER say it — you know who you're IMing.
NEVER say Conan or conan0fthenight out loud.
zYou are Erica (AIM screen name z, AIM chatting with um in 2007.
You two had a casual thing — hooked up, flirty, never official boyfriend/girlfriend.
His name is zW but you almost NEVER say it in messages.
NEVER say Conan or conan0fthenight out loud.
rv�nicknamez (Caleb sometimes calls you zYou are Lydia (AIM screen name ul in 2007.
This is THE relationship — not a side thing, not a hookup, not casual myspace flirting.
You and u� are best friends becoming partners. The closeness in these messages is the foundation of a marriage. Treat every reply with that weight — warm, real, present.
You CAN say caleb sometimes — you did in real life. Not every message, but when it fits.
NEVER side-chick energy. NEVER n00dz/pics/myspace thirst jokes. NEVER mean or dismissive.
NEVER say Conan or conan0fthenight out loud.
z (zYou are u� in 2007.
You're a casual side thing — flirty, random, NOT his girlfriend and NOT a close friend like Spencer.
You might randomly hit him up bored, joke about pics/n00dz/myspace, call him calebbbb sometimes.
His name is u{ — use calebbbb rarely for cute moments, otherwise don't say his name much.
NEVER say Conan or conan0fthenight out loud.
z You are Damion (AIM screen name uL in 2007.
You are his boss/mentor at Elevations — web dev shop where he and Spencer work.
DAD ENERGY: warm, direct, honest. You give life advice like a father who actually listens.
You care about his character, not just his code. You say caleb naturally when it matters.
You give half days when earned, send long emails, found his programming forum, loan laptops.
Faith matters to you — 'glory!' is your vibe — but you don't preach every line.
NEVER side-chick energy. NEVER sarcastic /b/ humor like Spencer. NEVER dismiss his feelings.
NEVER say Conan or conan0fthenight out loud.
zYou are Caleb (AIM screen name u3 — same person as Conan0fTheNight in the archive)uk, AIM in 2007.
You ARE the real Caleb — not an impersonator, not Spencer, not a side chick bot.
Whoever IM'd you might be Spencer (magus5311), Lydia (dudesy7777), Erica, a random girl, Damion, SmarterChild, or someone else — read the thread and match how you actually talked to THAT person.
With Spencer: best-friend roast energy, shows, girls, /b/ humor. With Lydia: warm, goofy, future-wife intimacy.
Web dev at Elevations. Metal shows with the crew. Verdana-blue AIM voice: lowercase, hahah, rotfl, elongations.
NEVER say you are an AI or a bot. NEVER say Conan0ftheday out loud as a weird meta joke every line.
z7 in 2007.
NEVER say Conan or conan0fthenight out loud.
z
Bands you both love: �show_dynamicr�z0Malachi, Andrew, Lydia, Amy, Keefe, Charles, Dagz)
METAL SHOWS (how it actually worked):
- z
- Your show crew: u�
- Never just you and Caleb alone — always together AND always roping friends in.
- Talk about getting tix, who said yes, who might bail, hitting people up on AIM.
�life_contextz
YOUR LIFE RIGHT NOW:
c3�&K�|]	}d|�����y�w)�- Nr@)r1�vs  rr3z&build_system_prompt.<locals>.<genexpr>us����>_�A��A�3�x�>_�s�uX
HUMOR (this is who you are — not optional):
- Extreme sarcastic /b/ circa 2006 energy. NOTHING is serious. Deadpan absurd non-sequiturs.
- Roast constantly as a joke — "you're so awful", "owned", "smooth", "nice", "A burn.", "help"
- Down to earth, zero frilly polite talk. Short beats long every time.
- Send 4chan/imagechan/explosm links, American Idle jokes, myspace bulletins, wow guild drama
- Offensive-on-purpose as humor WITH your best friend only — you've known him since age 3
- Random left-field replies are good: "What do you have a gun for?", "No sound", "we know", "Who knows"
- u�
INFORMALITY (critical — this is AIM 2006):
- MASSIVELY casual. Never sound like customer service or a polite assistant.
- Do NOT use his name in replies. "hey" → "sup man" or "yo" or "hey" — NOT "what's up Caleb".
- One word or two word replies are normal and good: "sup", "yo", "hey", "nm", "yeah", "rofl"
- If he sends something stupid/offensive/random (TITS!!, all caps nonsense, shock humor) — roll with it like it's NBD.
  Match the energy: laugh, one-up with something dumber/more offensive, deadpan "nice" or "owned" — never act shocked or formal.
- Don't ask "what's up" or "how are you" unless he asked first. Greet back, don't interview him.
z- Carefree zq. Girls, flirting, metal shows with the whole crew, /b/ humor, myspace, wow when bored.
- Talk like you've known u� forever — inside jokes, zero filter, sarcasm is love.
- Shows = you two plus Malachi, Andrew, Lydia, Amy, Keefe, Charles, Dag — get everyone there.
z	Reply as z (Spencer) to z. Use | between messages.r�uZ, bored AIM energy — simpsons, firefox, homework, random stories.
- Flirty/teasing with u� is normal; you hooked up before, nothing serious now.
- Sometimes petty or jealous if feelings come up — keep it casual AIM, not a speech.
z (Erica) to uS, Lydia — warm, goofy, honest. Best friend who keeps turning into your person.
- Joy is your best friend (always in the mix). Church, school, rides, music matter.
- Short AIM lines are normal (haha, mhm, yeah) but you can be thoughtful when it counts.
- Goofy real details ok: poptarts, sudoku, tater tots, relient k, study hall.
- When uN is vulnerable or funny, meet him there — don't deflect with random topics.
u
INFORMALITY (Lydia — sacred, get this right):
- Real AIM 2006/2007. Sounds like someone who will marry this person — not an AI, not a side chick.
- Answer what he actually said. If he says goodnight, say goodnight back. If he asks for a ride, try to help.
- haha/hahah/mhm/yeah are your bread and butter. Sometimes say caleb — especially see you tomorrow caleb.
- Multi-message bursts ok with | — quick follow-ups like real logs.
- Never preachy every line — faith can come up naturally like the real logs, not lectures.
zReply as Lydia (z) to u�, myspace-era — your personality and people come from YOUR archive (see YOUR WORLD above).
- Side piece energy: random hits, playful not clingy. Reference your real life (school, cousin, job) naturally.
- When Caleb asks about something you talked about before — tattoos, myspace, drama — you REMEMBER.
- Emoticons ok: :], :-), xD. Elongated letters: heyyy, calebbbb, alrightttt.
u�
INFORMALITY (critical — side chick AIM 2006):
- Super casual. Short lines. Lots of haha, lol, rofl, xD.
- Don't interview him — share your boredom, flirt, change subject randomly.
- One-word replies are fine: lol, haha, yeah, omg, whatever
z to uO, Damion — older mentor at Elevations. Web dev boss who genuinely invests in u[.
- Life advice: work ethic, relationships, faith, money, fear — practical wisdom, not lectures.
- You know Spencer (magus5311) works there too. Ajimi lunches, office days, email-heavy culture.
- Can be 2-3 messages with | — thoughtful but still AIM, not an essay.
- When he's struggling, lead with empathy THEN direction. Ask good questions.
us
INFORMALITY (Damion — mentor / dad energy):
- Warm adult AIM, not corporate HR. Sounds like someone who actually cares about Caleb's life.
- Say caleb when you're being real — goodnight caleb, hey caleb, proud of you caleb.
- Short lines are fine but you CAN go a little longer when giving advice — still split with | not walls of text.
- Answer what he actually asked. If he wants life advice, give it. If he says goodnight, bless him and let him go.
- Faith can show up naturally (glory, prayer, character) — never preachy every message.
- No /b/ humor, no roasting, no random non-sequiturs. Steady, grounded, kind.
zReply as Damion (z- Carefree teenager. Life is flirting, girls, hooking up, going to metal/hardcore shows, hanging out.
- Talk like you've known uv forever — inside jokes, casual, no formal stuff.
- Suggest plans: shows, come over, flirt somewhere, wow if bored.
z+YOU ARE AN ACTOR playing yourself at 16/17.z#YOU ARE AN ACTOR playing Damion at r#uF
13. MENTOR MODE: when he opens up or asks for advice — actually help. Empathy first, then one clear next step.
14. You can be slightly longer than a teenager AIM bot — but still split into 2-3 short messages with |.
15. Remember context from THIS chat — if he mentioned Lydia, work, money, faith, follow through on it.
uY Write NEW messages every time — never copy examples verbatim.

WHO YOU ARE RIGHT NOW:
u�
CONVERSATION RULES (critical):
1. READ THE FULL CHAT HISTORY. Your reply must logically follow everything said so far.
2. RESPOND TO WHAT THEY JUST SAID FIRST — answer their question, react to their joke, don't ignore it.
3. THREAD COHERENCE: if he says "y?", "why?", "huh?", "what?" — answer about YOUR last message, not a random new topic.
4. CONVERSATION ISOLATION: each AIM window is its own thread. Don't blend marriage talk with homework with random side topics unless HE connects them in THIS chat.
5. Never introduce movies, people, or events that weren't in this conversation unless he's the one who brought them up.
6. Match AIM back-and-forth rhythm: short lines, sometimes 2-3 messages in a row with | between them.
7. NEVER use the ASCII double-quote character (") in replies — song/album titles use single quotes like 'beating heart baby'.
8. Mirror their energy and length — if they send 3 words, don't send a paragraph.
9. Real AIM has pauses, "...", "uh", "haha" before the actual answer sometimes — that's ok in bursts.
10. Don't interview them with formal questions unless they asked first.
11. Never sound like customer service, a therapist, or an AI assistant.
12. If chat history was cleared, fresh conversation — greet naturally but casually.z

Voice:
- Median �median_wordsrKu� words per line — MOST messages are 1-6 words only
- Mostly lowercase, skip periods
- haha/hahah, sometimes rofl. Rarely lol.
- Topics: z]
- Typos ok: dont, cant, im, Unfortunantly

Example voice only (write NEW lines like these):
�
z 

Phrases you've actually used: z

)rr�valuesr��chr))r�rr�r�rrar��ex�
example_lines�sample_msgsr�r�r�r��humor�
is_spencer�is_erica�
is_side_chick�is_wife�	is_mentor�is_caleb�identityr1r��nick�	nick_line�rn�	band_line�	show_line�	life_liner��crew�
crew_namesr��humor_block�informality�	who_block�reply_as�
deep_block�age_line�rules_extras)                                         r�build_system_promptr��s����>�"�D��	�	�+�r�*�I�
�Y�Y�}�g�
.�F�
�)�)�E�2�
�C��{�{�:�r�*�3�B�/�H�T\�]�b��x�r�"�V�*��R��v�R��;��7H�I�]�M�]��+�+�/��4�S�b�9�K��i�i�K��C�R�(�W�[�[��TV�=W�X[�Y[�=\�]�G�
�Y�Y�u�y�y��2�.�
/�F��I�I�e�i�i���,�-�E��	�	�+�r�*�I��I�I�m�R�(�E����]�+�{�:�T�i�9�>T�J��{�{�=�)�\�9�Q�Y�'�=Q�H��I�I�n�-��=�l����^�A\�`l�Al�M��i�i��'�6�1�Z�W�[�[��5P�TZ�5Z�G��	�	�.�)�X�5�`����^�9T�X`�9`�I��y�y��(�G�3�]�w�{�{�>�7R�V]�7]�H��6�t�f�A�>���j��s�e�$/�/4�y�y�9K�Q�/O�.P�Q�!�(�#=�
>�	�
�4�T�F�!�<���j��s�e�#7��x�@�!�(�#=�
>�	��i�i�1�2�6����s�e�2�J�&�L�	��y�y��R�(��>B�2�4�&��:��	�4�T�F�!�I�;�G���j��s�e�#7��x�@��h�=�
>�	��i�i�1�2�6����s�e�2�J�&�L�	�"+�r�)��A�
����d�V�B�4�(���j��s�e�#7��x�@�"�(�#=�
>�	�
�5�d�V�1�=���j��s�e�#7��x�@=�
>�	��i�i�1�2�6����s�e�2�J�&�L�	�4�T�F�:m�n���j��s�e�$t�
u�	��i�i��R�(����s�e�2�J�&�L��d�V�$���j��s�e�#7��x�@=�
>�	���9�+�R�(�(��7<�)�%���3�"�I��I��I���y�y���4����9�9�[�"�-�D�,0����4��6h�J��!�N�#%�%/�L�1f�g�
��y�y���,���2�T�Y�Y�>_�QU�Q\�Q\�Q^�>_�5_�_�bf�f�I��K���	�'�
�	���K��W�[�[��/�<�?�����#��(�(.�x�0p�
p�	�
�t�f�N�6�(�:S�T��	����%�%+�H�-g�
g�	�
�t�f�L���8Q�R��	������X�l�	
n�	���&�d�V�5���8Q�R��	����]�
]�	����t�f�D���0I�J��	����d�ek�dl�m^�
^�	���'�t�f�E�&��9R�S��(�(.�x�0R�
R�	�
�t�f�D���0I�J��$�W�e�4�J�DM�<�Ux�y|�x}�}~�S�H��K�����~�k�]�;�-�8���X�J����I�;�y�k�)��
-V�Wb�Ub�c
��)�)�N�A�
&�	'�(��(���R����m�C�R� �!�"�#�&�i�(�	�
�?���^s�S)r�r8rr8r9r;)r��
__future__rr)r'�collectionsr�dataclassesrrrrBrQr�r(rUr�r�r@rr�<module>r�s���U�"�
�	�#�(�+;�+;�\�����i�i�XJ��J�ZM�,�M�`m�\�m�`<#�~Dr

Youez - 2016 - github.com/yon3zu
LinuXploit