diff --git a/.dict_benchmark.mojo.swp b/.dict_benchmark.mojo.swp new file mode 100644 index 0000000000..217f03997c Binary files /dev/null and b/.dict_benchmark.mojo.swp differ diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000..07fe41c52c --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# GitHub syntax highlighting +pixi.lock linguist-language=YAML linguist-generated=true diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000000..3a3ea97397 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,48 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "mojo-lldb", + "request": "launch", + "name": "Mojo: Debug current Mojo file", + "description": "Launch and debug the Mojo file that is active on the editor when the debug session starts.", + "mojoFile": "${file}", + "args": [], + "env": [], + "cwd": "${workspaceFolder}", + "runInTerminal": true + }, + { + "type": "mojo-lldb", + "request": "launch", + "name": "Mojo: Debug Mojo file", + "description": "Launch and debug a Mojo file given its path.", + "mojoFile": "${workspaceFolder}/", + "args": [], + "env": [], + "cwd": "${workspaceFolder}", + "runInTerminal": false + }, + { + "type": "mojo-lldb", + "request": "launch", + "name": "Mojo: Debug binary", + "description": "Launch and debug a precompiled binary given its path.", + "program": "${workspaceFolder}/", + "args": [], + "env": [], + "cwd": "${workspaceFolder}", + "runInTerminal": false + }, + { + "type": "mojo-lldb", + "request": "attach", + "name": "Mojo: Attach to process", + "description": "Search for a process to attach the debugger to.", + "pid": "${command:pickProcessToAttach}" + } + ] +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000000..d139a3dbdb --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "mojo.modularHomePath": "/home/msaelices/.modular" +} \ No newline at end of file diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000000..af77495dc6 --- /dev/null +++ b/TODO.md @@ -0,0 +1,4 @@ +* Fix TODO comment in test_representable function +* Implement Roundable __round__ with ndigits argument for all types +- https://github.com/modularml/mojo/issues/2679 +- https://github.com/modularml/mojo/issues/2680 diff --git a/add_docstring_to_cpython.py b/add_docstring_to_cpython.py new file mode 100644 index 0000000000..4a4a9dd92a --- /dev/null +++ b/add_docstring_to_cpython.py @@ -0,0 +1,37 @@ +import re + +def add_docstrings_to_mojo_file(mojo_filename, reference_filename, output_filename): + # Load reference mapping from the reference file + reference_mapping = {} + with open(reference_filename, 'r') as ref_file: + for line in ref_file: + match = re.match(r'(https://docs\.python\.org/3/c-api/.*#c\.\w+)\s+(\w+)', line) + if match: + reference_mapping[match.group(2)] = match.group(1) + + # Open and process the Mojo file + with open(mojo_filename, 'r') as mojo_file: + lines = mojo_file.readlines() + + updated_lines = [] + for i, line in enumerate(lines): + updated_lines.append(line) + fn_match = re.match(r' fn (\w+)(.*)', line) + if fn_match: + function_name = fn_match.group(1) + if function_name in reference_mapping: + # Add the docstring below the function definition + docstring = f' """See {reference_mapping[function_name]}"""\n' + updated_lines.append(docstring) + else: + pass + + # Write the updated lines to the output file + with open(output_filename, 'w') as output_file: + output_file.writelines(updated_lines) + +# Example usage +mojo_filename = 'stdlib/src/python/_cpython.mojo' +reference_filename = 'c-abi.txt' +output_filename = 'stdlib/src/python/_cpython.mojo' +add_docstrings_to_mojo_file(mojo_filename, reference_filename, output_filename) diff --git a/bench_join.mojo b/bench_join.mojo new file mode 100644 index 0000000000..af5d01359b --- /dev/null +++ b/bench_join.mojo @@ -0,0 +1,11 @@ +from time import now + +fn main(): + l = List[String]() + for i in range(100_000): + l.append(str(i)) + start = now() + s = ",".join(l) + #print(s) + end = now() + print('Len: ', len(s), 'Time: ', (end - start) / 1_000_000_000, 'seconds') diff --git a/bench_join.py b/bench_join.py new file mode 100644 index 0000000000..eaede24b6c --- /dev/null +++ b/bench_join.py @@ -0,0 +1,13 @@ +from time import time as now + +def main(): + l = list() + for i in range(100_000): + l.append(str(i)) + start = now() + s = ",".join(l) + end = now() + print('Len: ', len(s), 'Time: ', (end - start), 'seconds') + +if __name__ == '__main__': + main() diff --git a/big_text.txt b/big_text.txt new file mode 100644 index 0000000000..cbe1e0491f --- /dev/null +++ b/big_text.txt @@ -0,0 +1,154 @@ +Hey friends, it's your girl Bray. Enjoy Jolene. Welcome to back to her. If you aspire to heal evolve or revolutionize this podcast is for you. Make sure you subscribe and follow us on Instagram at official back to her. And that too is the number two. Let's get it. + Hey friends, we are back with another episode is Joy Jolene and the sugar bread and we're back to end this month off and a like a really good positive way our last episode. We talked about religion and spirituality in this episode. We want to take time for you guys to get to know us better for us to discuss more about ourselves so that you know, we we really a family and we really + That connection so let's get into it. So it may enjoy decided to do is we both came up with questions that we're going to ask each other. So I haven't seen her questions yet. She hasn't seen my questions yet. So hopefully this can just be fun and funny. Yeah, so let's get into it. All right, so you want to go right? I'll go first. Okay, so, okay. So my first question for you is who is Brittany? Okay, so, Brittany + She is a badass say is true. So let me just dig a little deep into that. So I actually have an alter ego if you know me Brit badass and before when I was young I used to be like What's Up and Shake It Up it badass. But now I feel like I still want to hold on to it, but just like being a woman that's a badass. So I'm trying to change The Narrative of you know little bit. + Badass Britt the badass, but other than that little bit about me, I'm originally from Queens New York and I spent half of my life in Jersey half of my life in New York. I recently graduated from Morgan State University where I obtained my degree in social work about me. I love hanging out with friends if you know me or one thing, I'm sure you all learn eventually is like friendship. + Is everything to me so like I would say like second to God like or you know, yeah, maybe like seconds ago second third to God like friendship is like everything like that's like the Forefront of me. I'm like so in love with just like evolving as a woman. Like I'm always trying to find different ways to better myself, you know connect and Inspire those connect and Inspire those who are connected to me. My love just doing things to me. + Will feel good to make people laugh. A lot of people think I'm funny. I guess I guess I'm funny but like, you know over I just really liked to make people feel good. I love God, of course the head of my life. So yeah. Those are some facts about me. Mmm. Okay. So let's see my question for you is what is something that most people don't know about you, but most people don't know about me. + Oh, that's tough. Actually, it's not but it is in a sense. Um something that most people do not know about me. + No, what don't show no. No, I guess I can say I have a lot of siblings. Hmm. I have okay, let me start counting I have + Three four one two, three, four four older sisters. I have one younger sister and I have one to two older brothers in one little brother. So yeah many is that total that's a lot but total so including like, you know, well my parents met they both had two kids. So my dad had a son and a daughter and my mom + Technically she had three so she had her stepdaughter and then she had two of my older sisters. And so when they came together technically they had five kids and so when they got together they had four additional kids. Hmm. And so that's a lot going on. Oh, wait, hold on. Yeah for yeah. So how do you like steak connected to all of them are like are you close all your sin? + Evelyn's, um, I would say because we're like, we're from Elkton we're not from Elkton but we live in Elkton. So we're kind of all we have in this is like, so we're close to each other like having a big family and this is why when I went that's time is for me. I want to have a big family because it's always somebody you can talk to and y'all have each other's back at the end of the day and for example, like my sister had a her daughter Lauren at the same on the same. + Day that I was born. So me and my knees for three years apart. We have the same exact birthday. And so things like that can happen when you have a big family to where you know, y'all just want to be closer and y'all have each other's back and you can talk if you can talk to One sibling about something you can talk to them. And you know, some of us I would say are closer than to each other than others, but for the most part like we it's all love with all of us and did you say how to how do I remain? + Well, I don't mean how did you know I said like how do you stay connected to them? But I think you answered that like yeah, probably from you know, I don't know. It's I think it's a big family thing where you just y'all are kind of all you had that's cool. Yeah. Okay my turn Okay. So let's jump to what is your zodiac sign and what characteristics about your zodiac do you feel fit you? Hmm, so I'm not a + Is so I'm still like I don't know why I like as of recently. I've been getting a little bit more interested to like learn more about like different zodiac signs. I don't really know much but I am an Aquarius and I know one thing that people say is that we are very emotional people. Yeah. I'm very emotional like not emotional innocence of like I'm always crying type of thing. Like I will cry but most of the time I this might be TMI, but like if I'm crying I just + Until I'm about to get my period like that's really when I cry or I have to be really really like touch to cry. But other than that, I'm just very like I feel emotion like I feel real emotion like something that like a person may be able to just kind of like brushed past like no that would actually hurt my feelings like yeah, and I'm very like my love language. Like I feel like out of all my friends like I'm the most just love + Like I just wanted to talk to you. I want to feel you. I want to like let you know that I appreciate you like out you don't like and I think those are signs of Aquarius and it's hard sometimes because people around me don't have that love language. So like it can't hurt my feelings like well, maybe you don't love me but it's like no people just you know Express their love in different ways, but that's something and I think that people like people say that Aquarius + Like I don't know like other court where deep Souls I know that like a lot of the Aquarius. I know they were very deep souls and I'm very deep like I hate surface level stuff. Like I have to we gotta like dig like dig dig deep like that's just me like I remember like being at work and like my job had like they were be really big on circles. So like it'll be like a starting question and like it'll be like, let's just say an activity would be like a whole bunch of different gadgets on the table, and I'm like, alright pick one. + And say why it resonates for you and I would have this whole spill like I would just be so deep. Everybody be like, oh I got this because I have two siblings, but I'll be like I got this because it reminds me like remember one time. I had got a pineapple and I was like before it could become a pineapple. It had to be a seed and sees have to be planted and I'm grown where I'm playing like, I'm just deep like you get what I'm saying? So that's I think some size of the anoke various. That's really good. Yeah. What's your zodiac sign? + So I'm a Capricorn really. I don't know what okay. Yeah, I'm a Capricorn. So I'm not that obvious. Actually. I did my own full natal chart and I have a lot of crazy to me. Really? Yeah, a lot of queries a lot of Capricorn, but I'm a Capricorn y'all and I will say the traits about me is kind of maybe like not that yes opposite really it's in a sense of because Capricorns are not that we're emotional but + He put it up like we're not like we're emotional but we realized that okay, we have to go through life. We have to get this right we have to work we have to we don't have time for our emotions. We put up that like type of spent front. So we're emotional, but we just don't show it because we are so focused on whatever we're focused on but things about the Capricorn zodiac people say, we're always working. Oh, you know, what's funny? I've been running into so many. + Capricorn's like I was at Mac and then I'll just felt the vibe of the two ladies in there and they were like, yeah kept I'm January 13th, January 6th. I was like really I'm January 12th. And so that was just interesting and know like just running into people were also kept going because I can see the calmness when you say a Capricorn you usually see the really calmness to them and like Focus determination side. And so I recognize what that within them, and it was just funny. But anyways + Things about us. We work a lot people say we're very focused. I mean that's pretty much it about Capricorns. We're just to ourselves but we're really out there at the same time. So I would say we enjoy our solitude but I mean at the end of the day, it also depends on what cat purring talking to I got no December Capricorn's are like different like Chelsea is different. + I know another who else is a December Capricorn Hennessy, I don't know if y'all know Kara dbe's little sister. They're just I feel like December Capricorns are more like outspoken like, you know, so but yeah, okay. So speaking since it's on the topic of like ourselves. What is one of your biggest pet peeves? Whoo, one of my biggest pet peeves is probably third. Mmm. You're very clean girl. Oh my gosh. I'm but + Thing is I'm not I think I'm clean but then I'll get around somebody who's really clean and I'm like dang but I don't know my pet. Peeve is like just too much junk too much dirt. It just I can't think clearly for me. But that's just living in a space living in a space where it's not working eyes because that I can't organize my mind. I don't know what it is and why this is no I do know why this is a thing because we always ancient + We were taught cleanliness is Godliness. Yeah, and so yeah, I think that's my pet peeve. Like if my house was I don't like inviting people over my house is dirty because I don't know. I just I feel like I got to show you the best and I got to give you that like, I don't know that's just my pet peeves. That's just me personally because I don't know. I just I think it's because like I said, I grew up in a household where was a lot of siblings and so the best way like I've I like to keep + My room where I was taught in bought up by my father to keep my room clean and so ever since then it's like been a part of me and I don't know when you're in a room when you're in a house with so many people it's easy for things to get dirty. And so I kept saying by just keeping my space together. Yeah girl, that's good. You're so clean. It's tough those two. Okay. Hmm name two of your expanders and explain. + Why they're your expander. So when I say expander like two people who really influence you and you see yourself through them and they motivate you to get to where you want to be. Hmm. Okay. So one person that I would say is this girl her name is Jamila Mustafa. I don't know if you know her but you know her yeah, so she is I know she's like a I don't know exactly what she does but I know she's like on MTV I think she's like a fish you like these he holes. + Like yeah, she does that those type of things like interview celebrities like when he come on to bet and like she's great. So I actually met her when I was Miss Morgan and like when I was Morgan we had to do this pageant like the national black college whole Alumni Hall of Fame and I don't know what it was about her. But like I was crying like and oh my God, and my mom said you like I'm not super super quick to cry. But if I'm touch I will cry but like I'm crying set up. + They're giving me like you need water. Give me a second glass of water. Like I really like she really really touched me and I don't know what it was about her. But like at the top hmm, I did time when I was Miss Morgan. I was really overwhelmed. Like I was I really really really really overwhelmed and like she was sharing her story and she was sharing how she was Miss Del State. She was like a former Miss Delaware State University and she was like talking about how like she was just so stressed and she ended up getting sick and like really + Ali sick in like she is almost like wash everything out and so for whatever reason I just like like her just talking about the importance of like taking care of yourself like it just some some it me like really really connected to her and then I was like girls like I don't know what it is about you, but I love you like and then in the pageant like we had it was an event called call to Womanhood like such a powerful session and later the pageant was later that day. And so I ended up. + Place in first runner-up in the pageant and like an I seen her after she was like interviewing people and I was like, oh my God, like did you see me? Like I was first starting up and she was like, oh we're twins. I was first runner-up. So it was like dang like it was just like a connection with her and then the following year. I had got an opportunity to be on the panel for the call to a woman and she was again on the panel and I don't know what it is about that girl, but it's like if any time only came in contact with her twice, but like when I come in contact with her, I feel like dang it. + I'm on the right path or I don't know like I just feel like I see her and like it's like a room like it's like I feel like I see her in like God is showing me like this is where I'm taking you like not in her path, but just like the way her. Oh God, like I can explain I just love her. So that's definitely one person. Um who and another person + And what we said a person that does would like someone who like an expander so someone who you're able to watch and you're saying okay like you said with your Miller like yeah, so I got another one Meek Mill. I'm so serious. I love me can like Granite like like I mean, I love me because Micah's so real, you know what I'm saying? And I love that like now that he's like growing and like, you know more into his self he + At the same time he still changing to who like still staying true to who he who he is and he's not changing and like I remember I was watching like an interview and like he was like telling someone like yo, I'm not no activist. I'm just Meek Mill like, you know what I'm saying? I love how like he takes his place. He's aware and conscious of his platform and he takes it to inspire people but doesn't change like he's so real and just so like to see him like make it out of the gutter and just like he's getting up there. + Is working with like Jay Z which is like the top of the game like and it's just amazing to see like and like I don't want to stay here and make it seem like I came from the gutter Gutter but I come from the riches either like you get what I'm saying? Like, I've been through poverty. I've been through all of that. So when he talks about certain things like he had this song like called oodles and noodles babies and like talking about like when all you have to eat is oodles and noodles. Like I've been there you get what I'm saying? So it's like it's just like to see him just like go and just I just love him. So like + he's another person that I literally be praying my God. Can I please meet me like his life? I feel like I know everything about him like but the truth be told like he really inspires me. Like he really truly really really really inspires me. So yeah, I was rapping but does not to name. Okay. So let me see a question that I have for you since we are talking about that is okay so friend. + Okay. So since I said that who is the first person that came to mind and tell us about a great experience that you all shared. Oh just friend the word for know so I said friend right? So when I say friend you all think about so friend who comes to mind who the first person that came to mind and like tell us about the experience that shared. Oh Asia. Asia is like one of my longest childhood friends, so + Just a little background. We grew up together ever since middle school. When do we meet exactly in middle school? I think we have mutual friends. That's how it happened. And so me and her ended up connecting like right when we met we were like, oh, yeah, we just had a bond that was just it was just bad was it it's what bill I think it's because she's a Virgo too and I'm a Capricorn and I just really love Virgos. And so, you know, we kind of we have a lot in common. + Amon and especially during that time. We had a lot in common we both played Sports when we got to high school we both were in cheerleading. We just had a we both were in track as well. And you know our bond was just there. Anyways, long story short you asked me about my experience that we had like, what is something like a great time boo a great time. It's so many how do I pick should give me like a direction? What type should it be like a like a this is like whenever like you don't even like oh my God. + Was such a crazy time I like that was such a great like just anything like a one of the most meaningful experiences when they saw him crazy fun-loving the track whatever makes you say. Okay, I see so me and Asia and this is what I admire about having like really good friends is when you go through something they feel it too and it's it's so inevitable, but mods was that my 19th or my 20th birthday. I want to say + my it was one of those either 19 or 20. I'm going to say my 20th birthday. + I had a party at a hotel in this was around the time that my father transition and he + yeah, this was around the time that my father transition in Asia was just really there for me and she felt that whole thing because she was close to my dad as well. Like I said, we grew up together from middle school and so during my party she just pulled me to the side and like she really just broke down like Julia so strong like I see everything you're going through. I feel it too and more stuff that of course, I won't talk about but she basically said she pulled + To the side and she really she just started crying and she was just like look, I feel that too. Like I feel the pain you're going through and that's what hurts me. The most is the fact that you're in pain. And so that moment right there is something that I'll never forget because even though I was trying to mask it up with drinking and so it's my birthday party. We had a hotel turning up. She was just like it would look at me and see like dang like you're so strong. I know what's really on your mind to really gone through and that's what's making me emotional. And so + So I would say that's one it because situations like that and makes me get closer to a person because you see more of who they are and how much they care about you and so yeah, that's when I'm in I was like, okay, I really got a really good friend and that's why I now we can be a part from each other for long periods of time and be good and come back together and like everything's good. That's somebody who I know for the rest of my life is like going to be there. Yeah. It's so hard to find those people in like I feel like when you find them or you have a me God + Like you got a hold on you guys. Yeah, that was really fun. And I remember like I was telling you earlier like when I seen her I like her vibe was just really good. Mmm-hmm. Yeah, she's amazing. All right. So next question for you. What are your aspirations in life where my aspirations? Okay. So, um, I want to be a speaker. I will be a speaker. Yes, we can into existence, but I want to like travel the world and you know be able to tell my story and inspire. + A woman and help women kind of like what we're doing on this podcast, but just really just being Global with it. You know, I never saw myself International more like around the country. I always said but I was watching this Kevin Hart documentary and like I saw how like he had this impact like in other countries too. So I was I mean, yeah in other countries too, so I was like why limit myself so I mean I want to be International. Yeah, that sounds so beyond myself. But yeah, so that's what I'm going to do. And I also want to be a judge. I will be a judge. + For juvenile court. I'm really big one. Like I don't know if I should say topic or I don't know about some like I guess the top of that I'm really really passionate about is mass incarceration. Like I'm really against the prison system and not saying that I'm against people going to jail because at the end of the day like if we do a crime or you hurt someone there has to be some sense of consequence, but I don't believe that the prison system is built in a way that can actually help the + People so that's something I really am like want to really really be a big like advocate for like changing the criminal justice system. And I also want to be a judge for juveniles. So yes, like right now I'm like in the process of like working with like, you know Department of Juvenile Services. I was like intern with the public defender's office in a juvenile unit. And I really truly loved it. So that's what I'm going to do. I want to be able to write books and like, you know, just be like a amazing woman but on top of that I also + Just want to be what like God wants me to be Emily wants me to be in that say that because like the plans that I have for my life are so big and I know those things will I guarantee me the money in the wealth and the same like I don't even want to say Fame but just like it'll guarantee the life that you know a person will want but it's like if I want that and that's was promise. I can only imagine you know, and like they always say like like eyes haven't seen or airs haven't heard like what God is going to do for you. So I'm like dang like + these plans that I have for myself is so much bigger, but then it's always a reminder of like you couldn't even imagine what God has for you. So like something like I feel like I'm dreaming so big - it even get bigger. But yeah, that's really good. That's really good. And you got it. Thank you girl. It's already written. Okay. So what is something that you feel like you can't live without + Something so is it this like a tangible item? It can be anything whatever it is. I can't live without this food count. Ha ha ha. Yeah, I'll be hungry something. I can't live with out. I would say water Joy is if that's not basic. Okay, that's okay. Let me get deeper. Okay. + Wasn't that I can't live without I'm trying to think what can I live without I've been trying it doesn't have to be a thing could be a person. It could be anything. Oh my gosh, you can be a person. Um, that's a lot of that's a lot of way if I put that on the person. + Okay, this is only one thing. What about you were thinking it could be a few things like I can't live without my tea. Oh my gosh, when I ran out of my mighty my awful Blends T my food for the blood. I was like, I'm breaking out and this is the reason why because the tea that I drink it has 102 minerals of the 102 minerals the body has and so when I feel like I'm not drinking it consistently. I feel like I'm missing out on my nutrients and so + I just feel changes in my body without feeling like off know that t is powerful. Yeah good. I see is powerful we could get into we did a full blend sponsorship we can yeah, we can make a whole episode on it. Okay, because when I get when I don't have that, I just feel like I'm not taking because I feel like everybody should take some type of get make sure you're getting your minerals in your vitamins in some way shape or form. That's my form and we should definitely do a daily because when we don't + Definitely filled a difference in my body. Like for example, I went to the doctor and they said I was anemic it's always knew I was anemic. But yeah, they said I was in the evening which basically means Joy get more iron and that's he has like a really lot of iron whole bunch of iron and that's around the time where I didn't have the T. So I was just like everything is going wrong. So I would say my food for the Bloods he by Up full Blends. I can't live without this going to sound bad. My phone is a big one because I need to make sure like, I can't + Talk to people when I want to and when people have an emergency and they need to call me and because unfortunately social media if I'm being honest sometime, you know, I want to check it every now and again, so that's that's bad. But I'm being honest and another thing I can't live without probably books. I'll be so bored if I couldn't read books and I feel like I wouldn't be as knowledgeable as of who I am if I couldn't read so books. It's a whole bunch of things. Maybe like my + Self-care routine. Yeah, I can't live without anything that's self care related. So that's good. That was a good question. Yeah, that's a tough cause it's like if it makes me want to thank Dang if I don't have this. Yeah, but then it makes me feel like okay now, I'm depending on other things for my happiness, right? So, right right, but at the same time like we really really dig deep and think about it. I feel like our lives are dependent on you go to things like everything that's a part of you like your car your phone. + On your friends everyday, if you didn't have those things like who the hell would you be? Yeah, that's what I'm saying. Like so it is a little scary but I don't you know, I mean, yeah, I don't like life is like meant to do just like you as an individual like that's why we have all these things but it is scary knowing that like dang of all these things that taken away like who we what what I do. Yeah, but that's also goes to say every little thing in person we come into contact with has an effect on us in some way shape or form and help. + Contribute to our growth and who we are. Yeah. Okay. So speaking of what is your self-care routine look like girl. Let's get into it. So what are the biggest things for me self-care that I do is I do take a lot of frequent breaks off of social media some like right now. I'm on a 21-day fast from social media. So some days. It could be a month some days. It could be three days like the remainder of a + Weeks and they could be two weeks but that is something that's really really important to me. Just because I feel like like sometimes I'll catch myself and I'm like dang I'm saying here scrolling. It's like what could I have gotten done or like, you know, like like, you know, you don't realize it but social media is in a sense or it can become like an obsession of what other people are doing. Yes guys. Like can we can we get the ball? No literally like + Every media really can be an obsession of what everybody else is doing and you don't realize it you're gonna think of you think you're just scrolling inside. But what you're scrolling you're seeing what they're doing and where they're at and what they're wearing and what they're listening to and what's their latest update but it's like all of that is like dang what if I just put that energy into myself, you know, so that I definitely try my best of luck do constant brakes and like I don't know like I don't wanna I feel like I'm more productive when I'm not on social media and I hate when like, I'm not on it and then I get that craving. + Until I get on I'm like that's disgusting. That's a sign. So your last year. I told myself that I wanted to start doing more frequent breaks and I think the more that I do it the more that I stay the more it's easier to let go so that's definitely one big thing a part of my self care. I also love to get my feet and my nails done like that is a really really big part of my self care and it's like it's gotten to a point now actually started doing that when I was Miss Morgan because I was like, I think just like the highest responsibility I've ever had so + That's what I was just like. Okay, like I have to take care of myself because to your girl is stressed. But yes sir point now we're like I've been like if I noticed like my nails on my toes aren't gonna like oh my like I look at my toes and like my the paint on my toes is crack and I'm not feeling good like you know, so that's like I really like try to make sure I keep my nails and my feet and cuz it's just some that just makes me feel good and like when I go I always I don't get the basic pedicure. So like I go to vibrant Nail Bar. It's + so good in Timonium for those who are in Baltimore, but it's like this package is I forgot what I can't remember what it's called, but it's like thirty seven dollars for the petty girl. I know it's a lot. I'm you know, that's not bad. I always go to the mall and they charge me $50 for your toes not even including tip. What do you get Joe regular regular? Oh, maybe that's why yeah, that's probably why because like, I mean I kind of do I think in the summer time? I'll probably start getting joe because I know it last longer we have your feet out. + This is for regular but it's like you get like a massage and they do like a clay mask on your foot is so good. It is this guy, who is this guy? Yo, he knows what he's doing. He really takes his time and it's like it's just a time for me to like just kind of like unpack and just like be by myself and I try my best like when I'm at the nail salon not to be on my phone. That's cool. And I like have like a book but when they get into the massage, that's when I put the book down. Oh, you got it. Yeah. I got it. + Really really good people but that like that's another thing that's like a really really big part of my self care. I like to get my hair done kinda I mean, I don't like getting my hair done but I like my hair being done if that makes sense. So yeah because I'm still pretty tender headed out of nowhere, but like I don't know like that's just like keeping my hair done keeping my nails that helps me to feel good and like, you know go with that myself. I mean, I would just say two more things reading that's definitely like self-care because like when I read I feel like I've become more intelligent and like I know + More like you know, I just like I just have this like I have this thing on my phone. So I have like over a hundred book recommendations. Like I have so many so so so so so many book recommendations on my phone and like I just be telling I'm like dang by the time I reach read all these books. I'm gonna be the smartest girl in the world like you knows I loved it because it helps me to feel you know, better and more intelligent more knowledgeable and last thing I'll say is church like or even if it's not church just like beating my spirit you got some because I + Actually recently just started going back to church. Like I actually stopped going to church for a while because I feel like I wasn't finding a church. That was like feeding me my spirit but like I found one which is the make sure I should put love is really good. But other than that just like listening to podcast like I like to like listen to sermons or you know documentaries or so. Let me not say church, but just doing things to feel my spirit because I am a very spiritual person and like I depend on that like I depend on my spirit to guide me, so it's like I feel like I have to do things like make sure + Spirit is fed. And but you'll get it when you see her eyes is closed. She's not at her because I was good. Oh, yes. I'm just getting into this. Well, I need the I'm trying to get deeper into this but I love massages. That's one thing about it. Oh my God, like I don't get them often and I + I actually want to start getting them more because I'm very tense and it really really helps but I brought it up because I remember the first time I really went and got a full body massage. This lady said to me self-care is not a luxury. It's a priority. Hmm, and I was like, oh that's good. And I'm and that's what I think made me really start getting them $37 pedicures because I fucked a lot of time like when people do things that make them feel good. It's like dang like I feel like self care whether that be like your nails your hair, whatever. + Is there needs to be a part of your budget like don't feel like okay when I get some extra money, then I'll do this. No, you have to make yourself feel good because when you feel good, that's when you show up good like, you know what I'm saying? So I just want to drop that blue that little weight. Yeah that little Jewel or whatever. Yeah, your body is a vessel. So you got to take care of it, right? So speaking of I guess I could just say this. So do you have like any book recommendations like any losses the children any okay how + Many do you want oh, maybe like two or three? Okay, you could give them like a brief synopsis. Oh gotcha. Okay. All right, y'all what y'all want to hear say? No. All right. So my first and foremost book recommendation, I feel like I told you all these two before so don't want to switch it up a little bit warmer always recommend this one. It's called sacred Woman by Queen of phua. Oh my gosh. Let me tell y'all I was at a place. + Place in my life where I would say I was kind of lacking guidance and you know, it was kind of a very depressive stage in my life. And so when I just literally just came and I was at the bookstore and then that book I just looked at it and I felt it and I was just like, ooh, I want this book. It's a purple really beautiful purple book and so it stuck out to me and I started reading a little bit and I was like Yep. This is the one and so + so just a quick synopsis of that book. So queen of fool. I actually just wanted to go see her on my birthday. She is so amazing. Like she's one of my expanders I would say and so this book a synopsis so she goes into ancient kemetic history, which is ancient Egypt Egyptian history and she goes into she gives you a synopsis of all of that which basically gives us an idea of who we are where we came from. + We started originally and then she talks about so many things about being a woman like everything that goes into being a woman from the womb to how we should eat to how she talks about the 42 laws of my eye, which is very similar to The Ten Commandments, which also is said to have derive The Ten Commandments are said to have derived from the 42 laws of mine. She tells you + You it's just so much that she gives you information on about being a woman. She talks about miscarriages and why black women are having miscarriages and how to how to heal your body through that and she goes into it y'all shit. If you're a woman even if you're a man, she has books like that on for men. But if you're a woman like I really recommend that book because it just goes in and so much that we deal with from infections to abortions to + Heartbreaks to you know, certain things we just deal with as a women as women. She also has in that book is called. I believe the she has gateways so through each Gateway show guide you on exactly what you should do. She mentions ancient deities in each Gateway that are that are she says kind of help you get through that Gateway and then she'll have certain practices that you're supposed to do. So, for example, she may say + Build an altar for your favorite ancestor or build an altar for yourself, but you know build an altar for you and visit that altar every day and just speak wise things into it and speak life into it and you know write down things you want the this is just an example but through each Gateway based on whatever the Gateway is. She'll have you do things so that you heal through that so one Gateway maybe for example healing your childhood trauma and then show you know, show you + Actively what to do what to eat she talks about what colors you should wear through each day because she goes into the history of which what the meaning behind the name of every day throughout the week. She gets into it so that book yeah that book. Oh my gosh, I would swear it. Yes. We're on that one. Another book recommendation. I would say this autobiography by Malcolm X. I about Malcolm X of Malcolm X I can see say that book was really + Good because it taught me a lot about Malcolm X that I didn't know and so that book just really I haven't finished it yet. But it's one of you know books where you just want to keep reading and reading reading it was that type of book where I kept reading. I wanted to keep reading and then I came across this man on like I think I was on like a train and he was like, oh I read that book like three times. That's a really good book and I was like, yeah. Yeah. Yeah. It's a really good. It really tells you about his story of Mike where he started which you would never expect. + To know that Malcolm X started where he started to where he is now and so well not now, but we're here, you know made it to so yeah, those are mine. Okay recommendations that makes me want to get a book. Yes. Yes. Okay. So I'm gonna jump a little into it since we're getting low on time. Okay, what would you tell your inner child right now Ocho? + Mmm, yeah, what would you tell your inner child right now? + Hmm. I think that if I had to like tell my inner child and like I feel like that's something that I have to like release it and like think deep deep deep but like I don't wanna stay on the surface level but just like off the top of my head. I think that I would need to tell my inner child like like you have enough love for you and like I don't know like how to comes out like what that even + Like but I think that one thing and it's crazy that we're bringing this up because I was thinking about this when I was on my way here. Yeah, like so I as a child have really bad. + Tang now you got me thinking because it's so much but yeah, so this is just one thing so as a child, I have really bad separation anxiety. Like I have really bad separation anxiety and I think it came from my mom when she was when I was young my mom used to work a lot and still like I used to always use the drop me off every like I don't want to say she was the drop me off any and everywhere but like someone was always babysitting me like, you know, whether I was at my nana's house. I was at my + My mom's house or I was at my grandmother's house. My grandma's house. Like I was just not home you get what I'm saying? And I just was like, I think like now looking back. It's like my mom was a great mom, but it's like I think I needed her a lot more than what she was there for you feel me and especially when she got sick and made it really hard for me because it was like dang like I haven't even made that connection with you yet, and it's like now you're sick, and I'm supposed to take care of you. + You and that's a whole nother you gonna I'm saying topic, but like I said, just like I think that's where like the separation anxiety came from and then um, I think it passed on to me now and like I had spoke about earlier. I'm very attached to my friends. I'm very attached to my friends and I really really love I like being around people. Um, and obviously not just being around just anyone but people that I love and that, you know, I feel love me and things of that nature but + I want to be more comfortable now my state where I'm at in my life. Now. I want to be more comfortable with being alone. So at a point of time, I was literally uncomfortable. Like literally I could not be alone. Like I remember like crying to my firm and I like please don't leave. I don't want you to be like if you leave them a coming to sleep like and I'm just thinking about how heavy of a burden that could be one of friend, you know, and she was amazing like she was stay with me day in and day out and you know, like that's just a whole nother topic but + I'm not there anymore. Like I can definitely be alone. But when I'm alone, I'm always on FaceTime. I'm always calling someone I'm always like scrolling on my phone like and I just want to be able to just like I just want to enjoy my presence more, you know, and I think that like if I can get to a space with them myself where like I just couldn't, you know false super in love with just like my energy and just like, you know just be alone like yeah, but that's really something I'm actually kind of like trying to work through right now. + But I know that that rules for my experiences as a child, so yeah, I would like tell my inner child like your love is like enough like you like you have what you need like I like like I can protect you like you're gonna say like I think at times like I'll feel like like I'll be thinking about how much I don't trust people and then like I'll be thinking back like dang like do I even trust myself you get what I'm saying? So like just developing like that love and that could I Feel Like Love Is everything like oh, yeah. + You Need Is Love and pure love you I'm saying I feel like I'm pure love with comes with trust and it's comes with so many other things so I think if I can like have that love Within Myself like that would open up so many things to tell you and your dad was a bomb joy in a child though just say say I love you, I love you you look sometimes that's all it takes is just saying like I love well we should yeah y'all so let me speaking of the where that question came from + I was reading a book spirit Spirit hacking my Shaman Derek and so in that book I was on a plane and he was just talking about how words are powerful the words that we say to ourselves especially as power are powerful and he went into how he built a relationship with himself. He said he started off. Well, he's a spiritual Shaman so he's able to you know, speak to his spiritual self like in a + A different way that we may not understand but he said he asked his inner child. He was just he said I love you and then he felt his Spirit say back to him really do you really and he was just like he said that really hit him because he that had to be a question that came up like, oh really you love me because that's something he never did before that point. But he's like, yeah, like I really love you and he said from that point on he took time everyday to talk to his to his inner child, which essentially is + Is all because we're always going to we all had that inner child that will be with us for the rest of our lives. Like essentially we're grown children. And so so yeah, he's like his inner child said really and he spent days after that just speaking life into himself. He said he was going to mirror because that's the easiest way to do it because you can literally look into your eyes and see you know that portal to your soul. And and yeah, and he was just Speak Life Speak life life, and that's how the altar. + He said he built an altar for his self. He put a photo of himself. He made it look really nice. He said you could put flowers on it. You can put anything that makes you happy on this Altar for yourself and every day spend time with that Altar and just talk like okay you can whether you want to meditate with it. What are you whether you want to just speak some great aspirations? He said we need to take time to take time to really love ourselves and heal our inner child. Yeah, and that's why + That's where the student topic that's a yeah, and her child loving the inner child because your inner child is literally your souls is a spirit. That's something that's your inner child has always been with you. And essentially we just want to make our inner child happy. Yeah. I remember I was at this event. I was at a conference this lead Alicia Reece. I love her she's amazing and she like does this whole like a vent about I'm not of them but like she leaves his session about like leading with a broken heart and + like, you know, she doesn't feel like the HBCU queens and like just talking about how like, you know, like as an HBCU Queen you have to like stand up and you get the wavy and to be in front of everyone but it's like what about everything else so she gives you know them a time to like unpack that and at the end she does this thing where like she has you like look at your phone and like tell your inner child like I love you and like I'm never gonna hurt you again and Wu Chao is like that's it like but yeah that you just motivated me to like want to definitely unpacked. + And he motivated me in that book. I was just like tenting. Yeah, why don't I take time every day to just talk to myself. Yeah, look at myself in the mirror, right and just you know Speak life and that's so important because it's making me think about like, okay like right now like, you know, we're no longer children like we're young adults, but then that makes me think about how like will then become Adele's and then it's like if we're not careful now, we'll be having the same conversation about healing your young adult and then he'll hearing so it like + Like it it can become a cycle. But that was a bomb Joy Jolene of wheat, but yet I was a really really good question. Okay, so we're gonna do about like two more. Mmm. I'm gonna do some more we got something so okay, since we're getting deep tell us about a specific time. That was a red flag. Okay, so basically like tell us about + Time where it was like boom a red flag, like I need to now go on a healing Journey like something that made you realize like oh, this is not good. Oh like in life that like LED you to your healing Journey. Oh, wow, red flag from me is most likely over drinking. Mmm when I'm like, okay, so I know the difference between when I want to drink to have a good time and when I want to drink to fill a void and so when I'm drinking to + Too much. I'm like art. Stop what's going on. Like why are you really drinking? Why do you feel the need that you have to drink? Yeah, that's a big one for me if I'm partying too will ya alright, so my personality if I'm if I'm doing anything, that's too fun too much. I'm too distracted. So my personality is more work than play, but when I do play play hard, but + Worked in place. So when I'm playing a little too much, I feel like I'm out of balance and it's something that I'm trying to escape from that I'm not addressing. So yeah, I would say over drink and that's a red flag. It always causes me every time it always makes me stop and look within and see Joy was going like I that's when I have to pull myself up by the shirt and say look you need to stop especially if I'm getting drunk if I'm drinking to get drunk rather than drinking, too. + Have a good time and Vibe. Um, so yeah nights where I can't remember that's when I'm like, okay. So have you ever had a time where it was like like a specific time was like this is not good. Um, okay a specific time. + This is going to be bad guys. Don't be mad. I know my sister is listening to this. Don't tell Mom I'll fuck. Um when I drink + I drank a whole lot this one night. When was that was this in God know this was? + This was after so basically I drank a lot and then I had to drive home in like oh actually do I have another story for y'all shouts how that story it is story. It's like it was really good. Yeah. Okay, so let me get to that so I drink a lot and I had to drive home and I was just like + The next day I woke up. Like how did I get home? Mmm, that's scary. I can't remember. Yeah, but I did everything perfectly. I park my car my God got home. I took myself in bed, you know, I did things perfectly but the next day I was just like, how did I get home like how my hair and my car I had to look outside. So that's when I was like, okay, I yeah you need is something going on. So we're you drinking too much. You're going out too much. + You need to look within and see what's going on. And that's when I knew I also like I was in a depressive mood. I dropped my phone. Yeah, that's a good question. Yeah, it's a really good one. Okay, one more each. Yeah, okay, um, a mighty all we did not tell each other these questions. These are just like I think this would be good for you. Okay, I think this would help some people. + I'm listening. What's the biggest obstacle? What's the biggest thing that you've had to heal from? And how did you do it? Like what's the biggest obstacle or one of the biggest if that because I know the biggest can it be something that I'm still going through or something? I had to like get. Yes. Okay X question. No. No, actually, I want something you got past so that people listening don't know like how yeah, they'll get some in sport of it. Okay. Can I ask a question? So what's one of the biggest obstacles you had to heal from and then how'd you hear? + For me and I know healing is never like oh, it's not A to point B, but so yeah, I guess if you're still healing from it, yeah. Okay. So one thing that I would say is one of the biggest things and I'll say that I healed from it. + but + I was at that I healed from it for sure. + I don't know that I can take a hundred percent. Yeah, but I can definitely say it majority like ninety eighty percent of is healed and the other percentage of it is the fact that like healing is not a destination. Yeah, I'm saying like it's still ongoing thing, but I would have to say the way okay, so it's like a two-part thing. So I would say the way that I feel about myself. Mmm and the way that I felt about myself. + Transcend into the way that I carried myself. Okay. So when I was young I really hated myself like I did like I remember even being like, I don't know. I thought I had a conversation with someone like yeah, and I was young so I didn't understood the magnitude of what I was saying, but I was like like I hate myself like I mean, there's nothing that I really like about like it was like nigga my heart hurt right now to think that I like felt like that at a point in time, but I remember that yeah, I really don't like myself like + I hate myself. Like I just I don't know like I'm trying to think of something I like and I don't like I really remember like having that conversation and I really didn't like myself and I was reckless in return like you going to plan and I never was like I never was like I hate myself. So I'm going to do this. You know what I'm saying? I just acted like I was just a noxious and not in a way where it was just like girl what but I just didn't carry myself with + Edu do what I'm saying. Like I didn't like I will be just outright just cursing like bitch what the fuck is sugar-free like, but I feel like when you carry it well for me in my walk like carrying like I would never do that you what I'm saying? Because now I care about myself. I love myself. I understand like I want to show up as my best self at all times. If I'm doing that. I don't feel comfortable with doing that you're saying so but I was just like just like that like smoking on Instagram didn't care who was see + Like I just am because I felt nasty about myself. I would treat people that way to like, I don't think I was like the nastiest girl in the world, but I'd like I remember like people who I quote unquote thought we're like weirdos or that were like corny like I would bully them you get I'm saying like say what I want to them like take their lunch like being crazy like that. Yeah I'm saying but like the more that I love myself, I feel like the better. I treat people you get what I'm saying? So it was like it took me a + A lot of like and I think that I can like now say I'm Healed from it and like I'm like, I'm at us like I had to get some point was like, okay, I love myself but like now I'm in a space where like I'm falling deeper in love with myself. But yeah, so just like I didn't I didn't like myself. I really really did it and like I feel like you can see it in the way like my hair would just always be a mess like I would just my clothes like I just I don't know. + I was like super sloppy but like looking at the way that I carry myself now and then then it just was like totally different like the way I treat people now in the way I treated people then so that was like something really hard to help from and I think that me not loving myself and me hating myself like came from a lot of other things like, you know, just some childhood traumas that I've experienced that led to that but I didn't like myself. So that was really a hard one and like, you know coming with not liking myself or not love. + In myself enough like then led to like me dealing with men or like allowing men to treat me some type of way. It is like came and a lot of like that's a whole other podcast it is so but to answer your question some one of the biggest obstacles I had to overcome was just just loving myself like because when I didn't love myself, I just couldn't be my best self. So yeah, that's a good one. Yeah. That was a good question. So yeah, I think + Is that that we do are two questions. Um, you want to do one more year the still one more do what I want to do one like a fun one. Okay one ended up. I'm going down Okay, so, let's see. All right. So we're going to ask each other one more question and this will be like, I guess like more of a fun. I want to laugh so tell us. Yeah. So my last question to you. It's probably + Okay, tell us about a bad dating experience that you had own like whether it was like a real bed. Yeah real bad like something that was just go. This is a mess. Oh my gosh. Okay. Okay. Okay. Hold on. Let me think of one, um a bad date. Um, where does have to be a day just like a like something that was like, this is bad. Let me think because I know I have one deep down in our + Let's see. Oh, oh, hold on your sorry if I'm taking a long time a bad day or something. I was just + oh, oh, oh, that's funny. Oh my gosh. I hope he's not listening to this. I don't think so. Okay. Alright y'all so I was in college so don't judge me. But okay this do took me on a date, right? Did he drown? Yeah. Okay, so he drove us. So this mind you this is in college. I think I was like a I was young so I was probably 18 maybe 19, probably 18 and so boom + So he takes me on a day. We're going to the movies blahblahblah was it's a Valentine's Day date. No, no. No it was okay. So then um, yeah, he takes me to the movies and I must be honest with y'all. I'm not a smoker. I don't I don't it's just not me people get mad every time they try to test that out with me and I'll fall asleep on them. I'm a naturally tired person. So if you want me to smoke with you nine times out of ten, I'm gonna go to bed. I'm gonna go to sleep. + Or I'm a want to start talking about the wonders of the world. It's one of the other so long story short. He wanted to do that and then take me to the movies. So long story short y'all wheat I slept through that whole entire movie when I tell you I was not I was like, I know I had my mouth open ever my God. So I was knocked out the whole movie mind you hold on so - you okay, so my job took we + And this is impossible or and we're walking to the movie theater in a rat ran across. Yes in mind you I'm not from the city. So I was like, what was that? He was like that was a rat and I was like y'all like, why are you just saying it like that's normal. I can't do that. Well, that was big that thing was big. So then yes, I'm gonna do all that. I'm like no. No, no, I can't do this. + This and then literally ran right on top of our feet. Oh my God. And so then like I said, we got into the movie theaters. I slept through the whole movie. He didn't even try to wake me up. So that's why not. Yeah. So then at the end he is like I heard people clapping then I woke up. He's like you slept through the whole movie. He was so mad at me and I was like, why didn't you wake me up and he was just like girl and he was so mad at me. I think he didn't talk to me for like a few days after that. Yeah, he was so mad. So that was just + But he I don't even think we entertained each other after that. So yeah, that was interesting. Sorry. I still I still feel bad. I'm like dang that boy wasted his money. Okay? All right, so fun little question and this off. Hmm. Let me see. I just have one in mind but + Okay. + Okay, let's go with this what tell us about? Okay, what comes to mind when I say this awkward moment that you had awkward moment, you came that so because we're desperate or this topic. I'm going to tell you about a bad experience bad date experience because that's what I thought about what you said I could moment. Alright y'all so I used to work at Friday's right? I use them work at Friday's I was a server and it was this guy. + He was a cook, you know, he was he was a little kill like he wasn't like dang he fine but he was cute and like, you know, he's hooked the food out for me, but I will say this I'd be like you didn't say right. So once I'm he's like, he's like, yeah like you should let me take you out. So I'm like Okay, cool. So basically we talk and like, you know, it was like maybe he said that I would say it was like Tuesday and Wednesday. We was going out that Saturday. So, you know every day we had where keep going to say those things. + Oh, yes. So like you going to dress up by Blossom like dress up like all right. Good, right. I'm gonna get he's like, right so he's like he's like, oh you like shooting guns. So he like nobody like you want to take this to the gun range, right? So I'm like, all right. So remember he said you one dress up, right? So girl, so I'm thinking like he want me to dress up. So I'm trying to think like should I wear heels, you know, I gotta put the fit on like and his demeanor. I mean, obviously we're at Friday's we both have a uniform you can't really tell but I his demeanor. + Why he was fly. He's like that's just a vibe that I got from him like this one. You just get some quick money at Friday's that's that's how I perceived it. So, you know, I got my hair done nails and everything right mind you this this sounds real bad. Please don't judge me, but I felt like I have a good fit. Like I have nothing really really good to wear. So I call my friend. I'm just like girl like, you know, you think you got something you could let me like I just I'm about to go on his date like, you know, like I really want to look cute, but he asked me am I going to dress up so I want to make sure + Sure that you follow me. I'll put my best foot or so mind you I had this car my car and my friends know it was Chrissy that joint and it that's a whole nother story has held the long story short my car was at a space will start in Breakdown because someone had put freaking power steering fluid and my brake fluid so my car was like really it will be shaken. Like it was really really bad right mind you so my mom told you I was gonna get the clothes for my friend since she was like 30 minutes away from my job that + Lie to you not I was so scared. I was gonna die that night. My car was shaking so bad start smoking everything. So I'm like yo, I'm Eliza are doing all this to get a fitness better be the best date of my life. So I go I'm get she I go mind you I'm not even going to get the fit. I'm going to pick her up. I'm going to pick her up 30 minutes away. Then I got to drive back the Morgan. So it's like another 30 minutes and some change back, but I'm doing all that is trying to get the fit mind you. + The car at this point is breakdown. I had to get AAA to like bring the car back. It was a whole mess writing. It was a lot going on, but I'm like you fucking that his Vibe is school his demeanor school. Like, it's me for my dress said he went to into the gaming just now. So I'm like that was really annoying. But I was hoping it was going to be worth it right girl. So put the fit on I'm like looking good. I have my braised. I have my red lip. I know I was + Good like it was like so chill like him a little ripped jeans on I have like a long shirt that with these little cat like I look real cute like it was like real real cute but still like not too much. Right and I think he even asked me if I was going to wear heels. That's the crazy part, right? Oh, so he picks me up. + Homeboy had a white tee on like white tea freshen up. The hands back has some straight leg jeans on and some Air Force Ones like no little more butter more fit. So when I see the fit, I'm already don't all cuz I'm like at this point you you gasping me up like you gonna dress up and you literally got like the Baltimore starter kit fit one flat out the bottom or started go flat out, right? So I'm like + Homeboy, so mad you I remember it was spring break. So it had to be high. It had to be about like hmm. I would say maybe like 75 like degrees it was it was nice outside like you could just have a shirt on right. He had the nerve to be like, yeah. I had my leather jacket on but I took it off because it's too hot see the thing is I don't know about our listeners and I don't know if they're from Baltimore or what but you gotta see the straight-leg Jean and he's kind of built so you it's tight. + Right. That's another thing. So you got the leather jacket on the white shirt, like straight leg jeans. No cuff at the bottom. Nothing. It's not even and then some all-white Air Force One, you know, like if you if they're not from Baltimore they may not get it. But if you are from the area, you know that that's a flyball to morph it but his best Yo his best so I already turned off as it is, right. So like I said, he was talking this he's look at his big game like + Really wet. The Take Me Out show me around blah blah blah. So we go to the gun range. It's cool, but I could tell like you for me. I prayed made him a little nervous because he like he was trying to help me shoot the gummy you could tell he was kind of like scared to be on me. Like, you know behind me whatever the case may be after the first at this point. I'm already turned off the fit had me done. That was it especially after I almost lost my life. Yeah, you get what I'm saying? So that's that so then so he like you want to get another gun and shoot another got I don't want to I think I'm ready to go home. So he like you hungry. + Like we should go grab some food. So I'm like, okay, like let me just relax them another chance you for me the way he talks you think he's about to take me to a nice restaurant. So then I'm like, all right, babe. We could go get some food. So mind you homeboy pulls up to IHOP, right? I like high places. So then, you know at the time I was still in school and y'all know I went to Morgan so I'm like son. + Hey God, I want to Spring Break and all I could do is pray that no Morgan students pull up because at this point I'm with this Baltimore do like straight flat out. Like that's just it like you get what I'm saying? So I'm praying that nobody sees me. So at this point, I'm just like yeah, you know, I got to work later. So I was like, I think I it's time for me then, you know go home I get myself together by blah. So I'm always very intrigued by like the culture of Baltimore and like, you know, like this the way in life about tomorrow. So like prior to that they like I will always be asking him. + Him like, you know, like tell me about it. Like like what's your family? Like are they involved in the street so that you can find what's up? So before he let you know I'll take you through. I'll show you around Bubba blah. So at first I was with it until you feel me. I saw defending took me to IHOP. I was not with it from there. So at this point I'm acting sleepy like like I just I don't know. I got that itís really you for me. Try to get him to take me home. So he's like, all right. I think he won't be back matter of fact before I take you home. Let me you feel me take you from ticket where I'm from. + Joy you shot a total switch up Sister. He literally became a b-boy boys in the hood. Like I was well I was taking see me because now he's driving regular as soon as he like turns into a black that like turn like that you won't be like was his area that he likes at bag put their hand on the will roll the window down. I have it on slow like so what is going on then someone drove past? He liked it diggle Rico and his picture. + Jess totals which is a total switch a total switch a totals with a total switch. Yo, I'm telling you he's going so slow and this week now I'm getting nervous. What did he do to make you feel that way about him you you tryna my using was Barry. I'm weeks. I'm like you trying to be boy Barry and I had his whole demeanor. I'm just like this is so bad, but you said awkward. + I felt the most awkward because it was like a I think it was a Morgan student. Who was our waiter and I have and I was so embarrassed. I was like, you know what I miss I did was what pray like Miss sophomore at this time. Yeah. I was like this off my chest I me you know, I have a good name a good look for myself and I'm like, I'm sitting here with this b-boy and I'm just like son that was it. That was the worst but that was my heart will dating experience. Yeah a lot a lot a lot then I had the nerve to leave. + But you know when you go to the gun range you ever been no. No we go to the government in you like shoot it. Like they give you the paper like you have the paper with like all the holes in it and I left it in his car. So I guess he was feeling because he was trying to like me but hey like you left it in my car. Let me know when I could drop it back while I was not with it like no not not not not with him never. But yeah, I had to share that with you all that was crazy. But in some variants, oh my gosh hilarious. Whoo. Yeah, but we hope that shot enjoyed. + Overall, like we said we have talked about a lot of deep topics. So we just kind of wanted to like, you know, kind of let down a little bit and like let you know about who we are like, you know, not so official and not so like trying to drop gems but just like what's up. We are friends. Yeah, you know, so we hope that we that shall enjoy make sure that y'all follow us on Instagram at official back to her and that too is the number to + Sure that you repost share with your friends. And yeah, and speaking of next month is Black History Month. Yeah, so we're going to have amazing series coming for you. Also make sure that you all stay tuned. Yes, you guys will love it and you definitely stay tuned in continued like if you missed the last episode make sure you catch up. Please catch up. Yes in the episode before that. Both episodes are regarding like we said before spirituality. + Religion in you don't want to miss out on that. So thank you guys for tuning in with us and being a part of our conversation and get to know us better. We really appreciate it. And my Instagram is at Joy Jolene Jo y Jo ele any and Minds is accordance of bread with three T's. Thanks guys. Yeah. diff --git a/c-abi.txt b/c-abi.txt new file mode 100644 index 0000000000..2d12c485a9 --- /dev/null +++ b/c-abi.txt @@ -0,0 +1,753 @@ +https://docs.python.org/3/c-api/call.html#c.PY_VECTORCALL_ARGUMENTS_OFFSET PY_VECTORCALL_ARGUMENTS_OFFSET +https://docs.python.org/3/c-api/iter.html#c.PyAIter_Check PyAIter_Check +https://docs.python.org/3/c-api/arg.html#c.PyArg_Parse PyArg_Parse +https://docs.python.org/3/c-api/arg.html#c.PyArg_ParseTuple PyArg_ParseTuple +https://docs.python.org/3/c-api/arg.html#c.PyArg_ParseTupleAndKeywords PyArg_ParseTupleAndKeywords +https://docs.python.org/3/c-api/arg.html#c.PyArg_UnpackTuple PyArg_UnpackTuple +https://docs.python.org/3/c-api/arg.html#c.PyArg_VaParse PyArg_VaParse +https://docs.python.org/3/c-api/arg.html#c.PyArg_VaParseTupleAndKeywords PyArg_VaParseTupleAndKeywords +https://docs.python.org/3/c-api/arg.html#c.PyArg_ValidateKeywordArguments PyArg_ValidateKeywordArguments +https://docs.python.org/3/c-api/bool.html#c.PyBool_FromLong PyBool_FromLong +https://docs.python.org/3/c-api/bool.html#c.PyBool_Type PyBool_Type +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_FillContiguousStrides PyBuffer_FillContiguousStrides +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_FillInfo PyBuffer_FillInfo +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_FromContiguous PyBuffer_FromContiguous +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_GetPointer PyBuffer_GetPointer +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_IsContiguous PyBuffer_IsContiguous +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_Release PyBuffer_Release +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_SizeFromFormat PyBuffer_SizeFromFormat +https://docs.python.org/3/c-api/buffer.html#c.PyBuffer_ToContiguous PyBuffer_ToContiguous +https://docs.python.org/3/c-api/bytearray.html#c.PyByteArray_AsString PyByteArray_AsString +https://docs.python.org/3/c-api/bytearray.html#c.PyByteArray_Concat PyByteArray_Concat +https://docs.python.org/3/c-api/bytearray.html#c.PyByteArray_FromObject PyByteArray_FromObject +https://docs.python.org/3/c-api/bytearray.html#c.PyByteArray_FromStringAndSize PyByteArray_FromStringAndSize +https://docs.python.org/3/c-api/bytearray.html#c.PyByteArray_Resize PyByteArray_Resize +https://docs.python.org/3/c-api/bytearray.html#c.PyByteArray_Size PyByteArray_Size +https://docs.python.org/3/c-api/bytearray.html#c.PyByteArray_Type PyByteArray_Type +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_AsString PyBytes_AsString +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_AsStringAndSize PyBytes_AsStringAndSize +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_Concat PyBytes_Concat +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_ConcatAndDel PyBytes_ConcatAndDel +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_FromFormat PyBytes_FromFormat +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_FromFormatV PyBytes_FromFormatV +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_FromObject PyBytes_FromObject +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_FromString PyBytes_FromString +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_FromStringAndSize PyBytes_FromStringAndSize +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_Size PyBytes_Size +https://docs.python.org/3/c-api/bytes.html#c.PyBytes_Type PyBytes_Type +https://docs.python.org/3/c-api/structures.html#c.PyCFunction PyCFunction +https://docs.python.org/3/c-api/structures.html#c.PyCFunctionFast PyCFunctionFast +https://docs.python.org/3/c-api/structures.html#c.PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords +https://docs.python.org/3/c-api/structures.html#c.PyCFunctionWithKeywords PyCFunctionWithKeywords +https://docs.python.org/3/c-api/structures.html#c.PyCFunction_New PyCFunction_New +https://docs.python.org/3/c-api/structures.html#c.PyCFunction_NewEx PyCFunction_NewEx +https://docs.python.org/3/c-api/structures.html#c.PyCMethod_New PyCMethod_New +https://docs.python.org/3/c-api/iterator.html#c.PyCallIter_New PyCallIter_New +https://docs.python.org/3/c-api/iterator.html#c.PyCallIter_Type PyCallIter_Type +https://docs.python.org/3/c-api/call.html#c.PyCallable_Check PyCallable_Check +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_Destructor PyCapsule_Destructor +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_GetContext PyCapsule_GetContext +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_GetDestructor PyCapsule_GetDestructor +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_GetName PyCapsule_GetName +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_GetPointer PyCapsule_GetPointer +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_Import PyCapsule_Import +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_IsValid PyCapsule_IsValid +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_New PyCapsule_New +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_SetContext PyCapsule_SetContext +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_SetDestructor PyCapsule_SetDestructor +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_SetName PyCapsule_SetName +https://docs.python.org/3/c-api/capsule.html#c.PyCapsule_SetPointer PyCapsule_SetPointer +https://docs.python.org/3/c-api/codec.html#c.PyCodec_BackslashReplaceErrors PyCodec_BackslashReplaceErrors +https://docs.python.org/3/c-api/codec.html#c.PyCodec_Decode PyCodec_Decode +https://docs.python.org/3/c-api/codec.html#c.PyCodec_Decoder PyCodec_Decoder +https://docs.python.org/3/c-api/codec.html#c.PyCodec_Encode PyCodec_Encode +https://docs.python.org/3/c-api/codec.html#c.PyCodec_Encoder PyCodec_Encoder +https://docs.python.org/3/c-api/codec.html#c.PyCodec_IgnoreErrors PyCodec_IgnoreErrors +https://docs.python.org/3/c-api/codec.html#c.PyCodec_IncrementalDecoder PyCodec_IncrementalDecoder +https://docs.python.org/3/c-api/codec.html#c.PyCodec_IncrementalEncoder PyCodec_IncrementalEncoder +https://docs.python.org/3/c-api/codec.html#c.PyCodec_KnownEncoding PyCodec_KnownEncoding +https://docs.python.org/3/c-api/codec.html#c.PyCodec_LookupError PyCodec_LookupError +https://docs.python.org/3/c-api/codec.html#c.PyCodec_NameReplaceErrors PyCodec_NameReplaceErrors +https://docs.python.org/3/c-api/codec.html#c.PyCodec_Register PyCodec_Register +https://docs.python.org/3/c-api/codec.html#c.PyCodec_RegisterError PyCodec_RegisterError +https://docs.python.org/3/c-api/codec.html#c.PyCodec_ReplaceErrors PyCodec_ReplaceErrors +https://docs.python.org/3/c-api/codec.html#c.PyCodec_StreamReader PyCodec_StreamReader +https://docs.python.org/3/c-api/codec.html#c.PyCodec_StreamWriter PyCodec_StreamWriter +https://docs.python.org/3/c-api/codec.html#c.PyCodec_StrictErrors PyCodec_StrictErrors +https://docs.python.org/3/c-api/codec.html#c.PyCodec_Unregister PyCodec_Unregister +https://docs.python.org/3/c-api/codec.html#c.PyCodec_XMLCharRefReplaceErrors PyCodec_XMLCharRefReplaceErrors +https://docs.python.org/3/c-api/complex.html#c.PyComplex_FromDoubles PyComplex_FromDoubles +https://docs.python.org/3/c-api/complex.html#c.PyComplex_ImagAsDouble PyComplex_ImagAsDouble +https://docs.python.org/3/c-api/complex.html#c.PyComplex_RealAsDouble PyComplex_RealAsDouble +https://docs.python.org/3/c-api/complex.html#c.PyComplex_Type PyComplex_Type +https://docs.python.org/3/c-api/descriptor.html#c.PyDescr_NewClassMethod PyDescr_NewClassMethod +https://docs.python.org/3/c-api/descriptor.html#c.PyDescr_NewGetSet PyDescr_NewGetSet +https://docs.python.org/3/c-api/descriptor.html#c.PyDescr_NewMember PyDescr_NewMember +https://docs.python.org/3/c-api/descriptor.html#c.PyDescr_NewMethod PyDescr_NewMethod +https://docs.python.org/3/c-api/dict.html#c.PyDictProxy_New PyDictProxy_New +https://docs.python.org/3/c-api/dict.html#c.PyDict_Clear PyDict_Clear +https://docs.python.org/3/c-api/dict.html#c.PyDict_Contains PyDict_Contains +https://docs.python.org/3/c-api/dict.html#c.PyDict_Copy PyDict_Copy +https://docs.python.org/3/c-api/dict.html#c.PyDict_DelItem PyDict_DelItem +https://docs.python.org/3/c-api/dict.html#c.PyDict_DelItemString PyDict_DelItemString +https://docs.python.org/3/c-api/dict.html#c.PyDict_GetItem PyDict_GetItem +https://docs.python.org/3/c-api/dict.html#c.PyDict_GetItemRef PyDict_GetItemRef +https://docs.python.org/3/c-api/dict.html#c.PyDict_GetItemString PyDict_GetItemString +https://docs.python.org/3/c-api/dict.html#c.PyDict_GetItemStringRef PyDict_GetItemStringRef +https://docs.python.org/3/c-api/dict.html#c.PyDict_GetItemWithError PyDict_GetItemWithError +https://docs.python.org/3/c-api/dict.html#c.PyDict_Items PyDict_Items +https://docs.python.org/3/c-api/dict.html#c.PyDict_Keys PyDict_Keys +https://docs.python.org/3/c-api/dict.html#c.PyDict_Merge PyDict_Merge +https://docs.python.org/3/c-api/dict.html#c.PyDict_MergeFromSeq2 PyDict_MergeFromSeq2 +https://docs.python.org/3/c-api/dict.html#c.PyDict_New PyDict_New +https://docs.python.org/3/c-api/dict.html#c.PyDict_Next PyDict_Next +https://docs.python.org/3/c-api/dict.html#c.PyDict_SetItem PyDict_SetItem +https://docs.python.org/3/c-api/dict.html#c.PyDict_SetItemString PyDict_SetItemString +https://docs.python.org/3/c-api/dict.html#c.PyDict_Size PyDict_Size +https://docs.python.org/3/c-api/dict.html#c.PyDict_Type PyDict_Type +https://docs.python.org/3/c-api/dict.html#c.PyDict_Update PyDict_Update +https://docs.python.org/3/c-api/dict.html#c.PyDict_Values PyDict_Values +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_BadArgument PyErr_BadArgument +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_BadInternalCall PyErr_BadInternalCall +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_CheckSignals PyErr_CheckSignals +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_Clear PyErr_Clear +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_DisplayException PyErr_DisplayException +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_ExceptionMatches PyErr_ExceptionMatches +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_Fetch PyErr_Fetch +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_Format PyErr_Format +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_FormatV PyErr_FormatV +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_GetExcInfo PyErr_GetExcInfo +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_GetHandledException PyErr_GetHandledException +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_GetRaisedException PyErr_GetRaisedException +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_GivenExceptionMatches PyErr_GivenExceptionMatches +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_NewException PyErr_NewException +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_NewExceptionWithDoc PyErr_NewExceptionWithDoc +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_NoMemory PyErr_NoMemory +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_NormalizeException PyErr_NormalizeException +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_Occurred PyErr_Occurred +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_Print PyErr_Print +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_PrintEx PyErr_PrintEx +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_ResourceWarning PyErr_ResourceWarning +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_Restore PyErr_Restore +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetExcFromWindowsErr PyErr_SetExcFromWindowsErr +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetExcFromWindowsErrWithFilename PyErr_SetExcFromWindowsErrWithFilename +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetExcFromWindowsErrWithFilenameObject PyErr_SetExcFromWindowsErrWithFilenameObject +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetExcFromWindowsErrWithFilenameObjects PyErr_SetExcFromWindowsErrWithFilenameObjects +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetExcInfo PyErr_SetExcInfo +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetFromErrno PyErr_SetFromErrno +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetFromErrnoWithFilename PyErr_SetFromErrnoWithFilename +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetFromErrnoWithFilenameObject PyErr_SetFromErrnoWithFilenameObject +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetFromErrnoWithFilenameObjects PyErr_SetFromErrnoWithFilenameObjects +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetFromWindowsErr PyErr_SetFromWindowsErr +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetFromWindowsErrWithFilename PyErr_SetFromWindowsErrWithFilename +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetHandledException PyErr_SetHandledException +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetImportError PyErr_SetImportError +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetImportErrorSubclass PyErr_SetImportErrorSubclass +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetInterrupt PyErr_SetInterrupt +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetInterruptEx PyErr_SetInterruptEx +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetNone PyErr_SetNone +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetObject PyErr_SetObject +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetRaisedException PyErr_SetRaisedException +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SetString PyErr_SetString +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SyntaxLocation PyErr_SyntaxLocation +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_SyntaxLocationEx PyErr_SyntaxLocationEx +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_WarnEx PyErr_WarnEx +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_WarnExplicit PyErr_WarnExplicit +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_WarnFormat PyErr_WarnFormat +https://docs.python.org/3/c-api/exceptions.html#c.PyErr_WriteUnraisable PyErr_WriteUnraisable +https://docs.python.org/3/c-api/init.html#c.PyEval_AcquireThread PyEval_AcquireThread +https://docs.python.org/3/c-api/veryhigh.html#c.PyEval_EvalCode PyEval_EvalCode +https://docs.python.org/3/c-api/veryhigh.html#c.PyEval_EvalCodeEx PyEval_EvalCodeEx +https://docs.python.org/3/c-api/veryhigh.html#c.PyEval_EvalFrame PyEval_EvalFrame +https://docs.python.org/3/c-api/veryhigh.html#c.PyEval_EvalFrameEx PyEval_EvalFrameEx +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetBuiltins PyEval_GetBuiltins +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetFrame PyEval_GetFrame +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetFrameBuiltins PyEval_GetFrameBuiltins +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetFrameGlobals PyEval_GetFrameGlobals +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetFrameLocals PyEval_GetFrameLocals +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetFuncDesc PyEval_GetFuncDesc +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetFuncName PyEval_GetFuncName +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetGlobals PyEval_GetGlobals +https://docs.python.org/3/c-api/reflection.html#c.PyEval_GetLocals PyEval_GetLocals +https://docs.python.org/3/c-api/init.html#c.PyEval_InitThreads PyEval_InitThreads +https://docs.python.org/3/c-api/init.html#c.PyEval_ReleaseThread PyEval_ReleaseThread +https://docs.python.org/3/c-api/init.html#c.PyEval_RestoreThread PyEval_RestoreThread +https://docs.python.org/3/c-api/init.html#c.PyEval_SaveThread PyEval_SaveThread +https://docs.python.org/3/c-api/exceptions.html#c.PyException_GetArgs PyException_GetArgs +https://docs.python.org/3/c-api/exceptions.html#c.PyException_GetCause PyException_GetCause +https://docs.python.org/3/c-api/exceptions.html#c.PyException_GetContext PyException_GetContext +https://docs.python.org/3/c-api/exceptions.html#c.PyException_GetTraceback PyException_GetTraceback +https://docs.python.org/3/c-api/exceptions.html#c.PyException_SetArgs PyException_SetArgs +https://docs.python.org/3/c-api/exceptions.html#c.PyException_SetCause PyException_SetCause +https://docs.python.org/3/c-api/exceptions.html#c.PyException_SetContext PyException_SetContext +https://docs.python.org/3/c-api/exceptions.html#c.PyException_SetTraceback PyException_SetTraceback +https://docs.python.org/3/c-api/file.html#c.PyFile_FromFd PyFile_FromFd +https://docs.python.org/3/c-api/file.html#c.PyFile_GetLine PyFile_GetLine +https://docs.python.org/3/c-api/file.html#c.PyFile_WriteObject PyFile_WriteObject +https://docs.python.org/3/c-api/file.html#c.PyFile_WriteString PyFile_WriteString +https://docs.python.org/3/c-api/float.html#c.PyFloat_AsDouble PyFloat_AsDouble +https://docs.python.org/3/c-api/float.html#c.PyFloat_FromDouble PyFloat_FromDouble +https://docs.python.org/3/c-api/float.html#c.PyFloat_FromString PyFloat_FromString +https://docs.python.org/3/c-api/float.html#c.PyFloat_GetInfo PyFloat_GetInfo +https://docs.python.org/3/c-api/float.html#c.PyFloat_GetMax PyFloat_GetMax +https://docs.python.org/3/c-api/float.html#c.PyFloat_GetMin PyFloat_GetMin +https://docs.python.org/3/c-api/float.html#c.PyFloat_Type PyFloat_Type +https://docs.python.org/3/c-api/frame.html#c.PyFrameObject PyFrameObject +https://docs.python.org/3/c-api/frame.html#c.PyFrame_GetCode PyFrame_GetCode +https://docs.python.org/3/c-api/frame.html#c.PyFrame_GetLineNumber PyFrame_GetLineNumber +https://docs.python.org/3/c-api/set.html#c.PyFrozenSet_New PyFrozenSet_New +https://docs.python.org/3/c-api/set.html#c.PyFrozenSet_Type PyFrozenSet_Type +https://docs.python.org/3/c-api/gcsupport.html#c.PyGC_Collect PyGC_Collect +https://docs.python.org/3/c-api/gcsupport.html#c.PyGC_Disable PyGC_Disable +https://docs.python.org/3/c-api/gcsupport.html#c.PyGC_Enable PyGC_Enable +https://docs.python.org/3/c-api/gcsupport.html#c.PyGC_IsEnabled PyGC_IsEnabled +https://docs.python.org/3/c-api/init.html#c.PyGILState_Ensure PyGILState_Ensure +https://docs.python.org/3/c-api/init.html#c.PyGILState_GetThisThreadState PyGILState_GetThisThreadState +https://docs.python.org/3/c-api/init.html#c.PyGILState_Release PyGILState_Release +https://docs.python.org/3/c-api/structures.html#c.PyGetSetDef PyGetSetDef +https://docs.python.org/3/c-api/import.html#c.PyImport_AddModule PyImport_AddModule +https://docs.python.org/3/c-api/import.html#c.PyImport_AddModuleObject PyImport_AddModuleObject +https://docs.python.org/3/c-api/import.html#c.PyImport_AddModuleRef PyImport_AddModuleRef +https://docs.python.org/3/c-api/import.html#c.PyImport_AppendInittab PyImport_AppendInittab +https://docs.python.org/3/c-api/import.html#c.PyImport_ExecCodeModule PyImport_ExecCodeModule +https://docs.python.org/3/c-api/import.html#c.PyImport_ExecCodeModuleEx PyImport_ExecCodeModuleEx +https://docs.python.org/3/c-api/import.html#c.PyImport_ExecCodeModuleObject PyImport_ExecCodeModuleObject +https://docs.python.org/3/c-api/import.html#c.PyImport_ExecCodeModuleWithPathnames PyImport_ExecCodeModuleWithPathnames +https://docs.python.org/3/c-api/import.html#c.PyImport_GetImporter PyImport_GetImporter +https://docs.python.org/3/c-api/import.html#c.PyImport_GetMagicNumber PyImport_GetMagicNumber +https://docs.python.org/3/c-api/import.html#c.PyImport_GetMagicTag PyImport_GetMagicTag +https://docs.python.org/3/c-api/import.html#c.PyImport_GetModule PyImport_GetModule +https://docs.python.org/3/c-api/import.html#c.PyImport_GetModuleDict PyImport_GetModuleDict +https://docs.python.org/3/c-api/import.html#c.PyImport_Import PyImport_Import +https://docs.python.org/3/c-api/import.html#c.PyImport_ImportFrozenModule PyImport_ImportFrozenModule +https://docs.python.org/3/c-api/import.html#c.PyImport_ImportFrozenModuleObject PyImport_ImportFrozenModuleObject +https://docs.python.org/3/c-api/import.html#c.PyImport_ImportModule PyImport_ImportModule +https://docs.python.org/3/c-api/import.html#c.PyImport_ImportModuleLevel PyImport_ImportModuleLevel +https://docs.python.org/3/c-api/import.html#c.PyImport_ImportModuleLevelObject PyImport_ImportModuleLevelObject +https://docs.python.org/3/c-api/import.html#c.PyImport_ImportModuleNoBlock PyImport_ImportModuleNoBlock +https://docs.python.org/3/c-api/import.html#c.PyImport_ReloadModule PyImport_ReloadModule +https://docs.python.org/3/c-api/number.html#c.PyIndex_Check PyIndex_Check +https://docs.python.org/3/c-api/init.html#c.PyInterpreterState PyInterpreterState +https://docs.python.org/3/c-api/init.html#c.PyInterpreterState_Clear PyInterpreterState_Clear +https://docs.python.org/3/c-api/init.html#c.PyInterpreterState_Delete PyInterpreterState_Delete +https://docs.python.org/3/c-api/init.html#c.PyInterpreterState_Get PyInterpreterState_Get +https://docs.python.org/3/c-api/init.html#c.PyInterpreterState_GetDict PyInterpreterState_GetDict +https://docs.python.org/3/c-api/init.html#c.PyInterpreterState_GetID PyInterpreterState_GetID +https://docs.python.org/3/c-api/init.html#c.PyInterpreterState_New PyInterpreterState_New +https://docs.python.org/3/c-api/iter.html#c.PyIter_Check PyIter_Check +https://docs.python.org/3/c-api/iter.html#c.PyIter_Next PyIter_Next +https://docs.python.org/3/c-api/iter.html#c.PyIter_Send PyIter_Send +https://docs.python.org/3/c-api/list.html#c.PyList_Append PyList_Append +https://docs.python.org/3/c-api/list.html#c.PyList_AsTuple PyList_AsTuple +https://docs.python.org/3/c-api/list.html#c.PyList_GetItem PyList_GetItem +https://docs.python.org/3/c-api/list.html#c.PyList_GetItemRef PyList_GetItemRef +https://docs.python.org/3/c-api/list.html#c.PyList_GetSlice PyList_GetSlice +https://docs.python.org/3/c-api/list.html#c.PyList_Insert PyList_Insert +https://docs.python.org/3/c-api/list.html#c.PyList_New PyList_New +https://docs.python.org/3/c-api/list.html#c.PyList_Reverse PyList_Reverse +https://docs.python.org/3/c-api/list.html#c.PyList_SetItem PyList_SetItem +https://docs.python.org/3/c-api/list.html#c.PyList_SetSlice PyList_SetSlice +https://docs.python.org/3/c-api/list.html#c.PyList_Size PyList_Size +https://docs.python.org/3/c-api/list.html#c.PyList_Sort PyList_Sort +https://docs.python.org/3/c-api/list.html#c.PyList_Type PyList_Type +https://docs.python.org/3/c-api/long.html#c.PyLongObject PyLongObject +https://docs.python.org/3/c-api/long.html#c.PyLong_AsInt PyLong_AsInt +https://docs.python.org/3/c-api/long.html#c.PyLong_AsLong PyLong_AsLong +https://docs.python.org/3/c-api/long.html#c.PyLong_AsLongAndOverflow PyLong_AsLongAndOverflow +https://docs.python.org/3/c-api/long.html#c.PyLong_AsLongLong PyLong_AsLongLong +https://docs.python.org/3/c-api/long.html#c.PyLong_AsLongLongAndOverflow PyLong_AsLongLongAndOverflow +https://docs.python.org/3/c-api/long.html#c.PyLong_AsSize_t PyLong_AsSize_t +https://docs.python.org/3/c-api/long.html#c.PyLong_AsSsize_t PyLong_AsSsize_t +https://docs.python.org/3/c-api/long.html#c.PyLong_AsUnsignedLong PyLong_AsUnsignedLong +https://docs.python.org/3/c-api/long.html#c.PyLong_AsUnsignedLongLong PyLong_AsUnsignedLongLong +https://docs.python.org/3/c-api/long.html#c.PyLong_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask +https://docs.python.org/3/c-api/long.html#c.PyLong_AsUnsignedLongMask PyLong_AsUnsignedLongMask +https://docs.python.org/3/c-api/long.html#c.PyLong_AsVoidPtr PyLong_AsVoidPtr +https://docs.python.org/3/c-api/long.html#c.PyLong_FromDouble PyLong_FromDouble +https://docs.python.org/3/c-api/long.html#c.PyLong_FromLong PyLong_FromLong +https://docs.python.org/3/c-api/long.html#c.PyLong_FromLongLong PyLong_FromLongLong +https://docs.python.org/3/c-api/long.html#c.PyLong_FromSize_t PyLong_FromSize_t +https://docs.python.org/3/c-api/long.html#c.PyLong_FromSsize_t PyLong_FromSsize_t +https://docs.python.org/3/c-api/long.html#c.PyLong_FromString PyLong_FromString +https://docs.python.org/3/c-api/long.html#c.PyLong_FromUnsignedLong PyLong_FromUnsignedLong +https://docs.python.org/3/c-api/long.html#c.PyLong_FromUnsignedLongLong PyLong_FromUnsignedLongLong +https://docs.python.org/3/c-api/long.html#c.PyLong_FromVoidPtr PyLong_FromVoidPtr +https://docs.python.org/3/c-api/long.html#c.PyLong_GetInfo PyLong_GetInfo +https://docs.python.org/3/c-api/long.html#c.PyLong_Type PyLong_Type +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_Check PyMapping_Check +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_GetItemString PyMapping_GetItemString +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_GetOptionalItem PyMapping_GetOptionalItem +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_GetOptionalItemString PyMapping_GetOptionalItemString +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_HasKey PyMapping_HasKey +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_HasKeyString PyMapping_HasKeyString +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_HasKeyStringWithError PyMapping_HasKeyStringWithError +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_HasKeyWithError PyMapping_HasKeyWithError +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_Items PyMapping_Items +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_Keys PyMapping_Keys +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_Length PyMapping_Length +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_SetItemString PyMapping_SetItemString +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_Size PyMapping_Size +https://docs.python.org/3/c-api/mapping.html#c.PyMapping_Values PyMapping_Values +https://docs.python.org/3/c-api/memory.html#c.PyMem_Calloc PyMem_Calloc +https://docs.python.org/3/c-api/memory.html#c.PyMem_Free PyMem_Free +https://docs.python.org/3/c-api/memory.html#c.PyMem_Malloc PyMem_Malloc +https://docs.python.org/3/c-api/memory.html#c.PyMem_RawCalloc PyMem_RawCalloc +https://docs.python.org/3/c-api/memory.html#c.PyMem_RawFree PyMem_RawFree +https://docs.python.org/3/c-api/memory.html#c.PyMem_RawMalloc PyMem_RawMalloc +https://docs.python.org/3/c-api/memory.html#c.PyMem_RawRealloc PyMem_RawRealloc +https://docs.python.org/3/c-api/memory.html#c.PyMem_Realloc PyMem_Realloc +https://docs.python.org/3/c-api/structures.html#c.PyMemberDef PyMemberDef +https://docs.python.org/3/c-api/structures.html#c.PyMember_GetOne PyMember_GetOne +https://docs.python.org/3/c-api/structures.html#c.PyMember_SetOne PyMember_SetOne +https://docs.python.org/3/c-api/memoryview.html#c.PyMemoryView_FromBuffer PyMemoryView_FromBuffer +https://docs.python.org/3/c-api/memoryview.html#c.PyMemoryView_FromMemory PyMemoryView_FromMemory +https://docs.python.org/3/c-api/memoryview.html#c.PyMemoryView_FromObject PyMemoryView_FromObject +https://docs.python.org/3/c-api/memoryview.html#c.PyMemoryView_GetContiguous PyMemoryView_GetContiguous +https://docs.python.org/3/c-api/structures.html#c.PyMethodDef PyMethodDef +https://docs.python.org/3/c-api/module.html#c.PyModuleDef PyModuleDef +https://docs.python.org/3/c-api/module.html#c.PyModuleDef_Init PyModuleDef_Init +https://docs.python.org/3/c-api/module.html#c.PyModule_Add PyModule_Add +https://docs.python.org/3/c-api/module.html#c.PyModule_AddFunctions PyModule_AddFunctions +https://docs.python.org/3/c-api/module.html#c.PyModule_AddIntConstant PyModule_AddIntConstant +https://docs.python.org/3/c-api/module.html#c.PyModule_AddObject PyModule_AddObject +https://docs.python.org/3/c-api/module.html#c.PyModule_AddObjectRef PyModule_AddObjectRef +https://docs.python.org/3/c-api/module.html#c.PyModule_AddStringConstant PyModule_AddStringConstant +https://docs.python.org/3/c-api/module.html#c.PyModule_AddType PyModule_AddType +https://docs.python.org/3/c-api/module.html#c.PyModule_Create2 PyModule_Create2 +https://docs.python.org/3/c-api/module.html#c.PyModule_ExecDef PyModule_ExecDef +https://docs.python.org/3/c-api/module.html#c.PyModule_FromDefAndSpec2 PyModule_FromDefAndSpec2 +https://docs.python.org/3/c-api/module.html#c.PyModule_GetDef PyModule_GetDef +https://docs.python.org/3/c-api/module.html#c.PyModule_GetDict PyModule_GetDict +https://docs.python.org/3/c-api/module.html#c.PyModule_GetFilename PyModule_GetFilename +https://docs.python.org/3/c-api/module.html#c.PyModule_GetFilenameObject PyModule_GetFilenameObject +https://docs.python.org/3/c-api/module.html#c.PyModule_GetName PyModule_GetName +https://docs.python.org/3/c-api/module.html#c.PyModule_GetNameObject PyModule_GetNameObject +https://docs.python.org/3/c-api/module.html#c.PyModule_GetState PyModule_GetState +https://docs.python.org/3/c-api/module.html#c.PyModule_New PyModule_New +https://docs.python.org/3/c-api/module.html#c.PyModule_NewObject PyModule_NewObject +https://docs.python.org/3/c-api/module.html#c.PyModule_SetDocString PyModule_SetDocString +https://docs.python.org/3/c-api/module.html#c.PyModule_Type PyModule_Type +https://docs.python.org/3/c-api/number.html#c.PyNumber_Absolute PyNumber_Absolute +https://docs.python.org/3/c-api/number.html#c.PyNumber_Add PyNumber_Add +https://docs.python.org/3/c-api/number.html#c.PyNumber_And PyNumber_And +https://docs.python.org/3/c-api/number.html#c.PyNumber_AsSsize_t PyNumber_AsSsize_t +https://docs.python.org/3/c-api/number.html#c.PyNumber_Check PyNumber_Check +https://docs.python.org/3/c-api/number.html#c.PyNumber_Divmod PyNumber_Divmod +https://docs.python.org/3/c-api/number.html#c.PyNumber_Float PyNumber_Float +https://docs.python.org/3/c-api/number.html#c.PyNumber_FloorDivide PyNumber_FloorDivide +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceAdd PyNumber_InPlaceAdd +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceAnd PyNumber_InPlaceAnd +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceFloorDivide PyNumber_InPlaceFloorDivide +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceLshift PyNumber_InPlaceLshift +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceMatrixMultiply PyNumber_InPlaceMatrixMultiply +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceMultiply PyNumber_InPlaceMultiply +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceOr PyNumber_InPlaceOr +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlacePower PyNumber_InPlacePower +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceRemainder PyNumber_InPlaceRemainder +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceRshift PyNumber_InPlaceRshift +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceSubtract PyNumber_InPlaceSubtract +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceTrueDivide PyNumber_InPlaceTrueDivide +https://docs.python.org/3/c-api/number.html#c.PyNumber_InPlaceXor PyNumber_InPlaceXor +https://docs.python.org/3/c-api/number.html#c.PyNumber_Index PyNumber_Index +https://docs.python.org/3/c-api/number.html#c.PyNumber_Invert PyNumber_Invert +https://docs.python.org/3/c-api/number.html#c.PyNumber_Long PyNumber_Long +https://docs.python.org/3/c-api/number.html#c.PyNumber_Lshift PyNumber_Lshift +https://docs.python.org/3/c-api/number.html#c.PyNumber_MatrixMultiply PyNumber_MatrixMultiply +https://docs.python.org/3/c-api/number.html#c.PyNumber_Multiply PyNumber_Multiply +https://docs.python.org/3/c-api/number.html#c.PyNumber_Negative PyNumber_Negative +https://docs.python.org/3/c-api/number.html#c.PyNumber_Or PyNumber_Or +https://docs.python.org/3/c-api/number.html#c.PyNumber_Positive PyNumber_Positive +https://docs.python.org/3/c-api/number.html#c.PyNumber_Power PyNumber_Power +https://docs.python.org/3/c-api/number.html#c.PyNumber_Remainder PyNumber_Remainder +https://docs.python.org/3/c-api/number.html#c.PyNumber_Rshift PyNumber_Rshift +https://docs.python.org/3/c-api/number.html#c.PyNumber_Subtract PyNumber_Subtract +https://docs.python.org/3/c-api/number.html#c.PyNumber_ToBase PyNumber_ToBase +https://docs.python.org/3/c-api/number.html#c.PyNumber_TrueDivide PyNumber_TrueDivide +https://docs.python.org/3/c-api/number.html#c.PyNumber_Xor PyNumber_Xor +https://docs.python.org/3/c-api/sys.html#c.PyOS_AfterFork PyOS_AfterFork +https://docs.python.org/3/c-api/sys.html#c.PyOS_AfterFork_Child PyOS_AfterFork_Child +https://docs.python.org/3/c-api/sys.html#c.PyOS_AfterFork_Parent PyOS_AfterFork_Parent +https://docs.python.org/3/c-api/sys.html#c.PyOS_BeforeFork PyOS_BeforeFork +https://docs.python.org/3/c-api/sys.html#c.PyOS_CheckStack PyOS_CheckStack +https://docs.python.org/3/c-api/sys.html#c.PyOS_FSPath PyOS_FSPath +https://docs.python.org/3/c-api/veryhigh.html#c.PyOS_InputHook PyOS_InputHook +https://docs.python.org/3/c-api/conversion.html#c.PyOS_double_to_string PyOS_double_to_string +https://docs.python.org/3/c-api/sys.html#c.PyOS_getsig PyOS_getsig +https://docs.python.org/3/c-api/sys.html#c.PyOS_setsig PyOS_setsig +https://docs.python.org/3/c-api/sys.html#c.PyOS_sighandler_t PyOS_sighandler_t +https://docs.python.org/3/c-api/conversion.html#c.PyOS_snprintf PyOS_snprintf +https://docs.python.org/3/c-api/conversion.html#c.PyOS_string_to_double PyOS_string_to_double +https://docs.python.org/3/c-api/conversion.html#c.PyOS_strtol PyOS_strtol +https://docs.python.org/3/c-api/conversion.html#c.PyOS_strtoul PyOS_strtoul +https://docs.python.org/3/c-api/conversion.html#c.PyOS_vsnprintf PyOS_vsnprintf +https://docs.python.org/3/c-api/structures.html#c.PyObject PyObject +https://docs.python.org/3/c-api/typeobj.html#c.PyObject.ob_refcnt PyObject.ob_refcnt +https://docs.python.org/3/c-api/typeobj.html#c.PyObject.ob_type PyObject.ob_type +https://docs.python.org/3/c-api/object.html#c.PyObject_ASCII PyObject_ASCII +https://docs.python.org/3/c-api/file.html#c.PyObject_AsFileDescriptor PyObject_AsFileDescriptor +https://docs.python.org/3/c-api/object.html#c.PyObject_Bytes PyObject_Bytes +https://docs.python.org/3/c-api/call.html#c.PyObject_Call PyObject_Call +https://docs.python.org/3/c-api/call.html#c.PyObject_CallFunction PyObject_CallFunction +https://docs.python.org/3/c-api/call.html#c.PyObject_CallFunctionObjArgs PyObject_CallFunctionObjArgs +https://docs.python.org/3/c-api/call.html#c.PyObject_CallMethod PyObject_CallMethod +https://docs.python.org/3/c-api/call.html#c.PyObject_CallMethodObjArgs PyObject_CallMethodObjArgs +https://docs.python.org/3/c-api/call.html#c.PyObject_CallNoArgs PyObject_CallNoArgs +https://docs.python.org/3/c-api/call.html#c.PyObject_CallObject PyObject_CallObject +https://docs.python.org/3/c-api/memory.html#c.PyObject_Calloc PyObject_Calloc +https://docs.python.org/3/c-api/buffer.html#c.PyObject_CheckBuffer PyObject_CheckBuffer +https://docs.python.org/3/c-api/weakref.html#c.PyObject_ClearWeakRefs PyObject_ClearWeakRefs +https://docs.python.org/3/c-api/buffer.html#c.PyObject_CopyData PyObject_CopyData +https://docs.python.org/3/c-api/object.html#c.PyObject_DelAttr PyObject_DelAttr +https://docs.python.org/3/c-api/object.html#c.PyObject_DelAttrString PyObject_DelAttrString +https://docs.python.org/3/c-api/object.html#c.PyObject_DelItem PyObject_DelItem +https://docs.python.org/3/c-api/object.html#c.PyObject_Dir PyObject_Dir +https://docs.python.org/3/c-api/object.html#c.PyObject_Format PyObject_Format +https://docs.python.org/3/c-api/memory.html#c.PyObject_Free PyObject_Free +https://docs.python.org/3/c-api/gcsupport.html#c.PyObject_GC_Del PyObject_GC_Del +https://docs.python.org/3/c-api/gcsupport.html#c.PyObject_GC_IsFinalized PyObject_GC_IsFinalized +https://docs.python.org/3/c-api/gcsupport.html#c.PyObject_GC_IsTracked PyObject_GC_IsTracked +https://docs.python.org/3/c-api/gcsupport.html#c.PyObject_GC_Track PyObject_GC_Track +https://docs.python.org/3/c-api/gcsupport.html#c.PyObject_GC_UnTrack PyObject_GC_UnTrack +https://docs.python.org/3/c-api/object.html#c.PyObject_GenericGetAttr PyObject_GenericGetAttr +https://docs.python.org/3/c-api/object.html#c.PyObject_GenericGetDict PyObject_GenericGetDict +https://docs.python.org/3/c-api/object.html#c.PyObject_GenericSetAttr PyObject_GenericSetAttr +https://docs.python.org/3/c-api/object.html#c.PyObject_GenericSetDict PyObject_GenericSetDict +https://docs.python.org/3/c-api/object.html#c.PyObject_GetAIter PyObject_GetAIter +https://docs.python.org/3/c-api/object.html#c.PyObject_GetAttr PyObject_GetAttr +https://docs.python.org/3/c-api/object.html#c.PyObject_GetAttrString PyObject_GetAttrString +https://docs.python.org/3/c-api/buffer.html#c.PyObject_GetBuffer PyObject_GetBuffer +https://docs.python.org/3/c-api/object.html#c.PyObject_GetItem PyObject_GetItem +https://docs.python.org/3/c-api/object.html#c.PyObject_GetIter PyObject_GetIter +https://docs.python.org/3/c-api/object.html#c.PyObject_GetOptionalAttr PyObject_GetOptionalAttr +https://docs.python.org/3/c-api/object.html#c.PyObject_GetOptionalAttrString PyObject_GetOptionalAttrString +https://docs.python.org/3/c-api/object.html#c.PyObject_GetTypeData PyObject_GetTypeData +https://docs.python.org/3/c-api/object.html#c.PyObject_HasAttr PyObject_HasAttr +https://docs.python.org/3/c-api/object.html#c.PyObject_HasAttrString PyObject_HasAttrString +https://docs.python.org/3/c-api/object.html#c.PyObject_HasAttrStringWithError PyObject_HasAttrStringWithError +https://docs.python.org/3/c-api/object.html#c.PyObject_HasAttrWithError PyObject_HasAttrWithError +https://docs.python.org/3/c-api/object.html#c.PyObject_Hash PyObject_Hash +https://docs.python.org/3/c-api/object.html#c.PyObject_HashNotImplemented PyObject_HashNotImplemented +https://docs.python.org/3/c-api/allocation.html#c.PyObject_Init PyObject_Init +https://docs.python.org/3/c-api/allocation.html#c.PyObject_InitVar PyObject_InitVar +https://docs.python.org/3/c-api/object.html#c.PyObject_IsInstance PyObject_IsInstance +https://docs.python.org/3/c-api/object.html#c.PyObject_IsSubclass PyObject_IsSubclass +https://docs.python.org/3/c-api/object.html#c.PyObject_IsTrue PyObject_IsTrue +https://docs.python.org/3/c-api/object.html#c.PyObject_Length PyObject_Length +https://docs.python.org/3/c-api/memory.html#c.PyObject_Malloc PyObject_Malloc +https://docs.python.org/3/c-api/object.html#c.PyObject_Not PyObject_Not +https://docs.python.org/3/c-api/memory.html#c.PyObject_Realloc PyObject_Realloc +https://docs.python.org/3/c-api/object.html#c.PyObject_Repr PyObject_Repr +https://docs.python.org/3/c-api/object.html#c.PyObject_RichCompare PyObject_RichCompare +https://docs.python.org/3/c-api/object.html#c.PyObject_RichCompareBool PyObject_RichCompareBool +https://docs.python.org/3/c-api/object.html#c.PyObject_SetAttr PyObject_SetAttr +https://docs.python.org/3/c-api/object.html#c.PyObject_SetAttrString PyObject_SetAttrString +https://docs.python.org/3/c-api/object.html#c.PyObject_SetItem PyObject_SetItem +https://docs.python.org/3/c-api/object.html#c.PyObject_Size PyObject_Size +https://docs.python.org/3/c-api/object.html#c.PyObject_Str PyObject_Str +https://docs.python.org/3/c-api/object.html#c.PyObject_Type PyObject_Type +https://docs.python.org/3/c-api/call.html#c.PyObject_Vectorcall PyObject_Vectorcall +https://docs.python.org/3/c-api/call.html#c.PyObject_VectorcallMethod PyObject_VectorcallMethod +https://docs.python.org/3/c-api/descriptor.html#c.PyProperty_Type PyProperty_Type +https://docs.python.org/3/c-api/iterator.html#c.PySeqIter_New PySeqIter_New +https://docs.python.org/3/c-api/iterator.html#c.PySeqIter_Type PySeqIter_Type +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Check PySequence_Check +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Concat PySequence_Concat +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Contains PySequence_Contains +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Count PySequence_Count +https://docs.python.org/3/c-api/sequence.html#c.PySequence_DelItem PySequence_DelItem +https://docs.python.org/3/c-api/sequence.html#c.PySequence_DelSlice PySequence_DelSlice +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Fast PySequence_Fast +https://docs.python.org/3/c-api/sequence.html#c.PySequence_GetItem PySequence_GetItem +https://docs.python.org/3/c-api/sequence.html#c.PySequence_GetSlice PySequence_GetSlice +https://docs.python.org/3/c-api/sequence.html#c.PySequence_InPlaceConcat PySequence_InPlaceConcat +https://docs.python.org/3/c-api/sequence.html#c.PySequence_InPlaceRepeat PySequence_InPlaceRepeat +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Index PySequence_Index +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Length PySequence_Length +https://docs.python.org/3/c-api/sequence.html#c.PySequence_List PySequence_List +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Repeat PySequence_Repeat +https://docs.python.org/3/c-api/sequence.html#c.PySequence_SetItem PySequence_SetItem +https://docs.python.org/3/c-api/sequence.html#c.PySequence_SetSlice PySequence_SetSlice +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Size PySequence_Size +https://docs.python.org/3/c-api/sequence.html#c.PySequence_Tuple PySequence_Tuple +https://docs.python.org/3/c-api/set.html#c.PySet_Add PySet_Add +https://docs.python.org/3/c-api/set.html#c.PySet_Clear PySet_Clear +https://docs.python.org/3/c-api/set.html#c.PySet_Contains PySet_Contains +https://docs.python.org/3/c-api/set.html#c.PySet_Discard PySet_Discard +https://docs.python.org/3/c-api/set.html#c.PySet_New PySet_New +https://docs.python.org/3/c-api/set.html#c.PySet_Pop PySet_Pop +https://docs.python.org/3/c-api/set.html#c.PySet_Size PySet_Size +https://docs.python.org/3/c-api/set.html#c.PySet_Type PySet_Type +https://docs.python.org/3/c-api/slice.html#c.PySlice_AdjustIndices PySlice_AdjustIndices +https://docs.python.org/3/c-api/slice.html#c.PySlice_GetIndices PySlice_GetIndices +https://docs.python.org/3/c-api/slice.html#c.PySlice_GetIndicesEx PySlice_GetIndicesEx +https://docs.python.org/3/c-api/slice.html#c.PySlice_New PySlice_New +https://docs.python.org/3/c-api/slice.html#c.PySlice_Type PySlice_Type +https://docs.python.org/3/c-api/slice.html#c.PySlice_Unpack PySlice_Unpack +https://docs.python.org/3/c-api/module.html#c.PyState_AddModule PyState_AddModule +https://docs.python.org/3/c-api/module.html#c.PyState_FindModule PyState_FindModule +https://docs.python.org/3/c-api/module.html#c.PyState_RemoveModule PyState_RemoveModule +https://docs.python.org/3/c-api/tuple.html#c.PyStructSequence_Desc PyStructSequence_Desc +https://docs.python.org/3/c-api/tuple.html#c.PyStructSequence_Field PyStructSequence_Field +https://docs.python.org/3/c-api/tuple.html#c.PyStructSequence_GetItem PyStructSequence_GetItem +https://docs.python.org/3/c-api/tuple.html#c.PyStructSequence_New PyStructSequence_New +https://docs.python.org/3/c-api/tuple.html#c.PyStructSequence_NewType PyStructSequence_NewType +https://docs.python.org/3/c-api/tuple.html#c.PyStructSequence_SetItem PyStructSequence_SetItem +https://docs.python.org/3/c-api/tuple.html#c.PyStructSequence_UnnamedField PyStructSequence_UnnamedField +https://docs.python.org/3/c-api/sys.html#c.PySys_Audit PySys_Audit +https://docs.python.org/3/c-api/sys.html#c.PySys_AuditTuple PySys_AuditTuple +https://docs.python.org/3/c-api/sys.html#c.PySys_FormatStderr PySys_FormatStderr +https://docs.python.org/3/c-api/sys.html#c.PySys_FormatStdout PySys_FormatStdout +https://docs.python.org/3/c-api/sys.html#c.PySys_GetObject PySys_GetObject +https://docs.python.org/3/c-api/sys.html#c.PySys_GetXOptions PySys_GetXOptions +https://docs.python.org/3/c-api/sys.html#c.PySys_ResetWarnOptions PySys_ResetWarnOptions +https://docs.python.org/3/c-api/init.html#c.PySys_SetArgv PySys_SetArgv +https://docs.python.org/3/c-api/init.html#c.PySys_SetArgvEx PySys_SetArgvEx +https://docs.python.org/3/c-api/sys.html#c.PySys_SetObject PySys_SetObject +https://docs.python.org/3/c-api/sys.html#c.PySys_WriteStderr PySys_WriteStderr +https://docs.python.org/3/c-api/sys.html#c.PySys_WriteStdout PySys_WriteStdout +https://docs.python.org/3/c-api/init.html#c.PyThreadState PyThreadState +https://docs.python.org/3/c-api/init.html#c.PyThreadState_Clear PyThreadState_Clear +https://docs.python.org/3/c-api/init.html#c.PyThreadState_Delete PyThreadState_Delete +https://docs.python.org/3/c-api/init.html#c.PyThreadState_Get PyThreadState_Get +https://docs.python.org/3/c-api/init.html#c.PyThreadState_GetDict PyThreadState_GetDict +https://docs.python.org/3/c-api/init.html#c.PyThreadState_GetFrame PyThreadState_GetFrame +https://docs.python.org/3/c-api/init.html#c.PyThreadState_GetID PyThreadState_GetID +https://docs.python.org/3/c-api/init.html#c.PyThreadState_GetInterpreter PyThreadState_GetInterpreter +https://docs.python.org/3/c-api/init.html#c.PyThreadState_New PyThreadState_New +https://docs.python.org/3/c-api/init.html#c.PyThreadState_SetAsyncExc PyThreadState_SetAsyncExc +https://docs.python.org/3/c-api/init.html#c.PyThreadState_Swap PyThreadState_Swap +https://docs.python.org/3/c-api/init.html#c.PyThread_ReInitTLS PyThread_ReInitTLS +https://docs.python.org/3/c-api/init.html#c.PyThread_create_key PyThread_create_key +https://docs.python.org/3/c-api/init.html#c.PyThread_delete_key PyThread_delete_key +https://docs.python.org/3/c-api/init.html#c.PyThread_delete_key_value PyThread_delete_key_value +https://docs.python.org/3/c-api/init.html#c.PyThread_get_key_value PyThread_get_key_value +https://docs.python.org/3/c-api/init.html#c.PyThread_set_key_value PyThread_set_key_value +https://docs.python.org/3/c-api/init.html#c.PyThread_tss_alloc PyThread_tss_alloc +https://docs.python.org/3/c-api/init.html#c.PyThread_tss_create PyThread_tss_create +https://docs.python.org/3/c-api/init.html#c.PyThread_tss_delete PyThread_tss_delete +https://docs.python.org/3/c-api/init.html#c.PyThread_tss_free PyThread_tss_free +https://docs.python.org/3/c-api/init.html#c.PyThread_tss_get PyThread_tss_get +https://docs.python.org/3/c-api/init.html#c.PyThread_tss_is_created PyThread_tss_is_created +https://docs.python.org/3/c-api/init.html#c.PyThread_tss_set PyThread_tss_set +https://docs.python.org/3/c-api/tuple.html#c.PyTuple_GetItem PyTuple_GetItem +https://docs.python.org/3/c-api/tuple.html#c.PyTuple_GetSlice PyTuple_GetSlice +https://docs.python.org/3/c-api/tuple.html#c.PyTuple_New PyTuple_New +https://docs.python.org/3/c-api/tuple.html#c.PyTuple_Pack PyTuple_Pack +https://docs.python.org/3/c-api/tuple.html#c.PyTuple_SetItem PyTuple_SetItem +https://docs.python.org/3/c-api/tuple.html#c.PyTuple_Size PyTuple_Size +https://docs.python.org/3/c-api/tuple.html#c.PyTuple_Type PyTuple_Type +https://docs.python.org/3/c-api/type.html#c.PyTypeObject PyTypeObject +https://docs.python.org/3/c-api/type.html#c.PyType_ClearCache PyType_ClearCache +https://docs.python.org/3/c-api/type.html#c.PyType_FromMetaclass PyType_FromMetaclass +https://docs.python.org/3/c-api/type.html#c.PyType_FromModuleAndSpec PyType_FromModuleAndSpec +https://docs.python.org/3/c-api/type.html#c.PyType_FromSpec PyType_FromSpec +https://docs.python.org/3/c-api/type.html#c.PyType_FromSpecWithBases PyType_FromSpecWithBases +https://docs.python.org/3/c-api/type.html#c.PyType_GenericAlloc PyType_GenericAlloc +https://docs.python.org/3/c-api/type.html#c.PyType_GenericNew PyType_GenericNew +https://docs.python.org/3/c-api/type.html#c.PyType_GetFlags PyType_GetFlags +https://docs.python.org/3/c-api/type.html#c.PyType_GetFullyQualifiedName PyType_GetFullyQualifiedName +https://docs.python.org/3/c-api/type.html#c.PyType_GetModule PyType_GetModule +https://docs.python.org/3/c-api/type.html#c.PyType_GetModuleByDef PyType_GetModuleByDef +https://docs.python.org/3/c-api/type.html#c.PyType_GetModuleName PyType_GetModuleName +https://docs.python.org/3/c-api/type.html#c.PyType_GetModuleState PyType_GetModuleState +https://docs.python.org/3/c-api/type.html#c.PyType_GetName PyType_GetName +https://docs.python.org/3/c-api/type.html#c.PyType_GetQualName PyType_GetQualName +https://docs.python.org/3/c-api/type.html#c.PyType_GetSlot PyType_GetSlot +https://docs.python.org/3/c-api/object.html#c.PyType_GetTypeDataSize PyType_GetTypeDataSize +https://docs.python.org/3/c-api/type.html#c.PyType_IsSubtype PyType_IsSubtype +https://docs.python.org/3/c-api/type.html#c.PyType_Modified PyType_Modified +https://docs.python.org/3/c-api/type.html#c.PyType_Ready PyType_Ready +https://docs.python.org/3/c-api/type.html#c.PyType_Slot PyType_Slot +https://docs.python.org/3/c-api/type.html#c.PyType_Spec PyType_Spec +https://docs.python.org/3/c-api/type.html#c.PyType_Type PyType_Type +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_Create PyUnicodeDecodeError_Create +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_GetEncoding PyUnicodeDecodeError_GetEncoding +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_GetEnd PyUnicodeDecodeError_GetEnd +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_GetObject PyUnicodeDecodeError_GetObject +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_GetReason PyUnicodeDecodeError_GetReason +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_GetStart PyUnicodeDecodeError_GetStart +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_SetEnd PyUnicodeDecodeError_SetEnd +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_SetReason PyUnicodeDecodeError_SetReason +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeDecodeError_SetStart PyUnicodeDecodeError_SetStart +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_GetEncoding PyUnicodeEncodeError_GetEncoding +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_GetEnd PyUnicodeEncodeError_GetEnd +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_GetObject PyUnicodeEncodeError_GetObject +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_GetReason PyUnicodeEncodeError_GetReason +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_GetStart PyUnicodeEncodeError_GetStart +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_SetEnd PyUnicodeEncodeError_SetEnd +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_SetReason PyUnicodeEncodeError_SetReason +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeEncodeError_SetStart PyUnicodeEncodeError_SetStart +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeTranslateError_GetEnd PyUnicodeTranslateError_GetEnd +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeTranslateError_GetObject PyUnicodeTranslateError_GetObject +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeTranslateError_GetReason PyUnicodeTranslateError_GetReason +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeTranslateError_GetStart PyUnicodeTranslateError_GetStart +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeTranslateError_SetEnd PyUnicodeTranslateError_SetEnd +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeTranslateError_SetReason PyUnicodeTranslateError_SetReason +https://docs.python.org/3/c-api/exceptions.html#c.PyUnicodeTranslateError_SetStart PyUnicodeTranslateError_SetStart +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsASCIIString PyUnicode_AsASCIIString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsCharmapString PyUnicode_AsCharmapString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsLatin1String PyUnicode_AsLatin1String +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsMBCSString PyUnicode_AsMBCSString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsRawUnicodeEscapeString PyUnicode_AsRawUnicodeEscapeString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsUCS4 PyUnicode_AsUCS4 +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsUCS4Copy PyUnicode_AsUCS4Copy +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsUTF16String PyUnicode_AsUTF16String +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsUTF32String PyUnicode_AsUTF32String +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsUTF8AndSize PyUnicode_AsUTF8AndSize +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsUTF8String PyUnicode_AsUTF8String +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsUnicodeEscapeString PyUnicode_AsUnicodeEscapeString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsWideChar PyUnicode_AsWideChar +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_AsWideCharString PyUnicode_AsWideCharString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Compare PyUnicode_Compare +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_CompareWithASCIIString PyUnicode_CompareWithASCIIString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Concat PyUnicode_Concat +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Contains PyUnicode_Contains +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Count PyUnicode_Count +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Decode PyUnicode_Decode +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeASCII PyUnicode_DecodeASCII +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeCharmap PyUnicode_DecodeCharmap +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeFSDefault PyUnicode_DecodeFSDefault +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeFSDefaultAndSize PyUnicode_DecodeFSDefaultAndSize +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeLatin1 PyUnicode_DecodeLatin1 +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeLocale PyUnicode_DecodeLocale +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeLocaleAndSize PyUnicode_DecodeLocaleAndSize +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeMBCS PyUnicode_DecodeMBCS +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeMBCSStateful PyUnicode_DecodeMBCSStateful +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeRawUnicodeEscape PyUnicode_DecodeRawUnicodeEscape +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF16 PyUnicode_DecodeUTF16 +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF16Stateful PyUnicode_DecodeUTF16Stateful +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF32 PyUnicode_DecodeUTF32 +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF32Stateful PyUnicode_DecodeUTF32Stateful +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF7 PyUnicode_DecodeUTF7 +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF7Stateful PyUnicode_DecodeUTF7Stateful +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF8 PyUnicode_DecodeUTF8 +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUTF8Stateful PyUnicode_DecodeUTF8Stateful +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_DecodeUnicodeEscape PyUnicode_DecodeUnicodeEscape +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_EncodeCodePage PyUnicode_EncodeCodePage +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_EncodeFSDefault PyUnicode_EncodeFSDefault +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_EncodeLocale PyUnicode_EncodeLocale +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_EqualToUTF8 PyUnicode_EqualToUTF8 +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_EqualToUTF8AndSize PyUnicode_EqualToUTF8AndSize +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FSConverter PyUnicode_FSConverter +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FSDecoder PyUnicode_FSDecoder +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Find PyUnicode_Find +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FindChar PyUnicode_FindChar +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Format PyUnicode_Format +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FromEncodedObject PyUnicode_FromEncodedObject +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FromFormat PyUnicode_FromFormat +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FromFormatV PyUnicode_FromFormatV +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FromObject PyUnicode_FromObject +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FromString PyUnicode_FromString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FromStringAndSize PyUnicode_FromStringAndSize +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_FromWideChar PyUnicode_FromWideChar +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_GetLength PyUnicode_GetLength +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_InternFromString PyUnicode_InternFromString +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_InternInPlace PyUnicode_InternInPlace +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_IsIdentifier PyUnicode_IsIdentifier +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Join PyUnicode_Join +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_ReadChar PyUnicode_ReadChar +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Replace PyUnicode_Replace +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_RichCompare PyUnicode_RichCompare +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Split PyUnicode_Split +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Splitlines PyUnicode_Splitlines +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Substring PyUnicode_Substring +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Tailmatch PyUnicode_Tailmatch +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Translate PyUnicode_Translate +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_Type PyUnicode_Type +https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_WriteChar PyUnicode_WriteChar +https://docs.python.org/3/c-api/structures.html#c.PyVarObject PyVarObject +https://docs.python.org/3/c-api/typeobj.html#c.PyVarObject.ob_size PyVarObject.ob_size +https://docs.python.org/3/c-api/call.html#c.PyVectorcall_Call PyVectorcall_Call +https://docs.python.org/3/c-api/call.html#c.PyVectorcall_NARGS PyVectorcall_NARGS +https://docs.python.org/3/c-api/weakref.html#c.PyWeakref_GetObject PyWeakref_GetObject +https://docs.python.org/3/c-api/weakref.html#c.PyWeakref_GetRef PyWeakref_GetRef +https://docs.python.org/3/c-api/weakref.html#c.PyWeakref_NewProxy PyWeakref_NewProxy +https://docs.python.org/3/c-api/weakref.html#c.PyWeakref_NewRef PyWeakref_NewRef +https://docs.python.org/3/c-api/descriptor.html#c.PyWrapper_New PyWrapper_New +https://docs.python.org/3/c-api/init.html#c.Py_AddPendingCall Py_AddPendingCall +https://docs.python.org/3/c-api/sys.html#c.Py_AtExit Py_AtExit +https://docs.python.org/3/c-api/init.html#c.Py_BEGIN_ALLOW_THREADS Py_BEGIN_ALLOW_THREADS +https://docs.python.org/3/c-api/init.html#c.Py_BLOCK_THREADS Py_BLOCK_THREADS +https://docs.python.org/3/c-api/arg.html#c.Py_BuildValue Py_BuildValue +https://docs.python.org/3/c-api/init.html#c.Py_BytesMain Py_BytesMain +https://docs.python.org/3/c-api/veryhigh.html#c.Py_CompileString Py_CompileString +https://docs.python.org/3/c-api/refcounting.html#c.Py_DecRef Py_DecRef +https://docs.python.org/3/c-api/sys.html#c.Py_DecodeLocale Py_DecodeLocale +https://docs.python.org/3/c-api/init.html#c.Py_END_ALLOW_THREADS Py_END_ALLOW_THREADS +https://docs.python.org/3/c-api/sys.html#c.Py_EncodeLocale Py_EncodeLocale +https://docs.python.org/3/c-api/init.html#c.Py_EndInterpreter Py_EndInterpreter +https://docs.python.org/3/c-api/exceptions.html#c.Py_EnterRecursiveCall Py_EnterRecursiveCall +https://docs.python.org/3/c-api/sys.html#c.Py_Exit Py_Exit +https://docs.python.org/3/c-api/sys.html#c.Py_FatalError Py_FatalError +https://docs.python.org/3/c-api/init.html#c.Py_Finalize Py_Finalize +https://docs.python.org/3/c-api/init.html#c.Py_FinalizeEx Py_FinalizeEx +https://docs.python.org/3/c-api/typehints.html#c.Py_GenericAlias Py_GenericAlias +https://docs.python.org/3/c-api/typehints.html#c.Py_GenericAliasType Py_GenericAliasType +https://docs.python.org/3/c-api/init.html#c.Py_GetBuildInfo Py_GetBuildInfo +https://docs.python.org/3/c-api/init.html#c.Py_GetCompiler Py_GetCompiler +https://docs.python.org/3/c-api/object.html#c.Py_GetConstant Py_GetConstant +https://docs.python.org/3/c-api/object.html#c.Py_GetConstantBorrowed Py_GetConstantBorrowed +https://docs.python.org/3/c-api/init.html#c.Py_GetCopyright Py_GetCopyright +https://docs.python.org/3/c-api/init.html#c.Py_GetExecPrefix Py_GetExecPrefix +https://docs.python.org/3/c-api/init.html#c.Py_GetPath Py_GetPath +https://docs.python.org/3/c-api/init.html#c.Py_GetPlatform Py_GetPlatform +https://docs.python.org/3/c-api/init.html#c.Py_GetPrefix Py_GetPrefix +https://docs.python.org/3/c-api/init.html#c.Py_GetProgramFullPath Py_GetProgramFullPath +https://docs.python.org/3/c-api/init.html#c.Py_GetProgramName Py_GetProgramName +https://docs.python.org/3/c-api/init.html#c.Py_GetPythonHome Py_GetPythonHome +https://docs.python.org/3/c-api/init.html#c.Py_GetVersion Py_GetVersion +https://docs.python.org/3/c-api/refcounting.html#c.Py_IncRef Py_IncRef +https://docs.python.org/3/c-api/init.html#c.Py_Initialize Py_Initialize +https://docs.python.org/3/c-api/init.html#c.Py_InitializeEx Py_InitializeEx +https://docs.python.org/3/c-api/structures.html#c.Py_Is Py_Is +https://docs.python.org/3/c-api/structures.html#c.Py_IsFalse Py_IsFalse +https://docs.python.org/3/c-api/init.html#c.Py_IsFinalizing Py_IsFinalizing +https://docs.python.org/3/c-api/init.html#c.Py_IsInitialized Py_IsInitialized +https://docs.python.org/3/c-api/structures.html#c.Py_IsNone Py_IsNone +https://docs.python.org/3/c-api/structures.html#c.Py_IsTrue Py_IsTrue +https://docs.python.org/3/c-api/exceptions.html#c.Py_LeaveRecursiveCall Py_LeaveRecursiveCall +https://docs.python.org/3/c-api/init.html#c.Py_Main Py_Main +https://docs.python.org/3/c-api/init.html#c.Py_NewInterpreter Py_NewInterpreter +https://docs.python.org/3/c-api/refcounting.html#c.Py_NewRef Py_NewRef +https://docs.python.org/3/c-api/exceptions.html#c.Py_ReprEnter Py_ReprEnter +https://docs.python.org/3/c-api/exceptions.html#c.Py_ReprLeave Py_ReprLeave +https://docs.python.org/3/c-api/init.html#c.Py_SetProgramName Py_SetProgramName +https://docs.python.org/3/c-api/init.html#c.Py_SetPythonHome Py_SetPythonHome +https://docs.python.org/3/c-api/unicode.html#c.Py_UCS4 Py_UCS4 +https://docs.python.org/3/c-api/init.html#c.Py_UNBLOCK_THREADS Py_UNBLOCK_THREADS +https://docs.python.org/3/c-api/arg.html#c.Py_VaBuildValue Py_VaBuildValue +https://docs.python.org/3/c-api/apiabiversion.html#c.Py_Version Py_Version +https://docs.python.org/3/c-api/refcounting.html#c.Py_XNewRef Py_XNewRef +https://docs.python.org/3/c-api/buffer.html#c.Py_buffer Py_buffer +https://docs.python.org/3/c-api/intro.html#c.Py_ssize_t Py_ssize_t +https://docs.python.org/3/c-api/typeobj.html#c.allocfunc allocfunc +https://docs.python.org/3/c-api/typeobj.html#c.binaryfunc binaryfunc +https://docs.python.org/3/c-api/typeobj.html#c.descrgetfunc descrgetfunc +https://docs.python.org/3/c-api/typeobj.html#c.descrsetfunc descrsetfunc +https://docs.python.org/3/c-api/typeobj.html#c.destructor destructor +https://docs.python.org/3/c-api/typeobj.html#c.getattrfunc getattrfunc +https://docs.python.org/3/c-api/typeobj.html#c.getattrofunc getattrofunc +https://docs.python.org/3/c-api/typeobj.html#c.getbufferproc getbufferproc +https://docs.python.org/3/c-api/typeobj.html#c.getiterfunc getiterfunc +https://docs.python.org/3/c-api/structures.html#c.getter getter +https://docs.python.org/3/c-api/typeobj.html#c.hashfunc hashfunc +https://docs.python.org/3/c-api/typeobj.html#c.initproc initproc +https://docs.python.org/3/c-api/gcsupport.html#c.inquiry inquiry +https://docs.python.org/3/c-api/typeobj.html#c.iternextfunc iternextfunc +https://docs.python.org/3/c-api/typeobj.html#c.lenfunc lenfunc +https://docs.python.org/3/c-api/typeobj.html#c.newfunc newfunc +https://docs.python.org/3/c-api/typeobj.html#c.objobjargproc objobjargproc +https://docs.python.org/3/c-api/typeobj.html#c.objobjproc objobjproc +https://docs.python.org/3/c-api/typeobj.html#c.releasebufferproc releasebufferproc +https://docs.python.org/3/c-api/typeobj.html#c.reprfunc reprfunc +https://docs.python.org/3/c-api/typeobj.html#c.richcmpfunc richcmpfunc +https://docs.python.org/3/c-api/typeobj.html#c.setattrfunc setattrfunc +https://docs.python.org/3/c-api/typeobj.html#c.setattrofunc setattrofunc +https://docs.python.org/3/c-api/structures.html#c.setter setter +https://docs.python.org/3/c-api/typeobj.html#c.ssizeargfunc ssizeargfunc +https://docs.python.org/3/c-api/typeobj.html#c.ssizeobjargproc ssizeobjargproc +https://docs.python.org/3/c-api/typeobj.html#c.ternaryfunc ternaryfunc +https://docs.python.org/3/c-api/gcsupport.html#c.traverseproc traverseproc +https://docs.python.org/3/c-api/typeobj.html#c.unaryfunc unaryfunc +https://docs.python.org/3/c-api/call.html#c.vectorcallfunc vectorcallfunc +https://docs.python.org/3/c-api/gcsupport.html#c.visitproc visitproc diff --git a/dict_benchmark.mojo b/dict_benchmark.mojo new file mode 100644 index 0000000000..3571c62c2a --- /dev/null +++ b/dict_benchmark.mojo @@ -0,0 +1,196 @@ +from collections import List, Dict +from time import now + + +fn get_wds() raises -> List[String]: + input = String(""" +Hey friends, it's your girl Bray. Enjoy Jolene. Welcome to back to her. If you aspire to heal evolve or revolutionize this podcast is for you. Make sure you subscribe and follow us on Instagram at official back to her. And that too is the number two. Let's get it. + Hey friends, we are back with another episode is Joy Jolene and the sugar bread and we're back to end this month off and a like a really good positive way our last episode. We talked about religion and spirituality in this episode. We want to take time for you guys to get to know us better for us to discuss more about ourselves so that you know, we we really a family and we really + That connection so let's get into it. So it may enjoy decided to do is we both came up with questions that we're going to ask each other. So I haven't seen her questions yet. She hasn't seen my questions yet. So hopefully this can just be fun and funny. Yeah, so let's get into it. All right, so you want to go right? I'll go first. Okay, so, okay. So my first question for you is who is Brittany? Okay, so, Brittany + She is a badass say is true. So let me just dig a little deep into that. So I actually have an alter ego if you know me Brit badass and before when I was young I used to be like What's Up and Shake It Up it badass. But now I feel like I still want to hold on to it, but just like being a woman that's a badass. So I'm trying to change The Narrative of you know little bit. + Badass Britt the badass, but other than that little bit about me, I'm originally from Queens New York and I spent half of my life in Jersey half of my life in New York. I recently graduated from Morgan State University where I obtained my degree in social work about me. I love hanging out with friends if you know me or one thing, I'm sure you all learn eventually is like friendship. + Is everything to me so like I would say like second to God like or you know, yeah, maybe like seconds ago second third to God like friendship is like everything like that's like the Forefront of me. I'm like so in love with just like evolving as a woman. Like I'm always trying to find different ways to better myself, you know connect and Inspire those connect and Inspire those who are connected to me. My love just doing things to me. + Will feel good to make people laugh. A lot of people think I'm funny. I guess I guess I'm funny but like, you know over I just really liked to make people feel good. I love God, of course the head of my life. So yeah. Those are some facts about me. Mmm. Okay. So let's see my question for you is what is something that most people don't know about you, but most people don't know about me. + Oh, that's tough. Actually, it's not but it is in a sense. Um something that most people do not know about me. + No, what don't show no. No, I guess I can say I have a lot of siblings. Hmm. I have okay, let me start counting I have + Three four one two, three, four four older sisters. I have one younger sister and I have one to two older brothers in one little brother. So yeah many is that total that's a lot but total so including like, you know, well my parents met they both had two kids. So my dad had a son and a daughter and my mom + Technically she had three so she had her stepdaughter and then she had two of my older sisters. And so when they came together technically they had five kids and so when they got together they had four additional kids. Hmm. And so that's a lot going on. Oh, wait, hold on. Yeah for yeah. So how do you like steak connected to all of them are like are you close all your sin? + Evelyn's, um, I would say because we're like, we're from Elkton we're not from Elkton but we live in Elkton. So we're kind of all we have in this is like, so we're close to each other like having a big family and this is why when I went that's time is for me. I want to have a big family because it's always somebody you can talk to and y'all have each other's back at the end of the day and for example, like my sister had a her daughter Lauren at the same on the same. + Day that I was born. So me and my knees for three years apart. We have the same exact birthday. And so things like that can happen when you have a big family to where you know, y'all just want to be closer and y'all have each other's back and you can talk if you can talk to One sibling about something you can talk to them. And you know, some of us I would say are closer than to each other than others, but for the most part like we it's all love with all of us and did you say how to how do I remain? + Well, I don't mean how did you know I said like how do you stay connected to them? But I think you answered that like yeah, probably from you know, I don't know. It's I think it's a big family thing where you just y'all are kind of all you had that's cool. Yeah. Okay my turn Okay. So let's jump to what is your zodiac sign and what characteristics about your zodiac do you feel fit you? Hmm, so I'm not a + Is so I'm still like I don't know why I like as of recently. I've been getting a little bit more interested to like learn more about like different zodiac signs. I don't really know much but I am an Aquarius and I know one thing that people say is that we are very emotional people. Yeah. I'm very emotional like not emotional innocence of like I'm always crying type of thing. Like I will cry but most of the time I this might be TMI, but like if I'm crying I just + Until I'm about to get my period like that's really when I cry or I have to be really really like touch to cry. But other than that, I'm just very like I feel emotion like I feel real emotion like something that like a person may be able to just kind of like brushed past like no that would actually hurt my feelings like yeah, and I'm very like my love language. Like I feel like out of all my friends like I'm the most just love + Like I just wanted to talk to you. I want to feel you. I want to like let you know that I appreciate you like out you don't like and I think those are signs of Aquarius and it's hard sometimes because people around me don't have that love language. So like it can't hurt my feelings like well, maybe you don't love me but it's like no people just you know Express their love in different ways, but that's something and I think that people like people say that Aquarius + Like I don't know like other court where deep Souls I know that like a lot of the Aquarius. I know they were very deep souls and I'm very deep like I hate surface level stuff. Like I have to we gotta like dig like dig dig deep like that's just me like I remember like being at work and like my job had like they were be really big on circles. So like it'll be like a starting question and like it'll be like, let's just say an activity would be like a whole bunch of different gadgets on the table, and I'm like, alright pick one. + And say why it resonates for you and I would have this whole spill like I would just be so deep. Everybody be like, oh I got this because I have two siblings, but I'll be like I got this because it reminds me like remember one time. I had got a pineapple and I was like before it could become a pineapple. It had to be a seed and sees have to be planted and I'm grown where I'm playing like, I'm just deep like you get what I'm saying? So that's I think some size of the anoke various. That's really good. Yeah. What's your zodiac sign? + So I'm a Capricorn really. I don't know what okay. Yeah, I'm a Capricorn. So I'm not that obvious. Actually. I did my own full natal chart and I have a lot of crazy to me. Really? Yeah, a lot of queries a lot of Capricorn, but I'm a Capricorn y'all and I will say the traits about me is kind of maybe like not that yes opposite really it's in a sense of because Capricorns are not that we're emotional but + He put it up like we're not like we're emotional but we realized that okay, we have to go through life. We have to get this right we have to work we have to we don't have time for our emotions. We put up that like type of spent front. So we're emotional, but we just don't show it because we are so focused on whatever we're focused on but things about the Capricorn zodiac people say, we're always working. Oh, you know, what's funny? I've been running into so many. + Capricorn's like I was at Mac and then I'll just felt the vibe of the two ladies in there and they were like, yeah kept I'm January 13th, January 6th. I was like really I'm January 12th. And so that was just interesting and know like just running into people were also kept going because I can see the calmness when you say a Capricorn you usually see the really calmness to them and like Focus determination side. And so I recognize what that within them, and it was just funny. But anyways + Things about us. We work a lot people say we're very focused. I mean that's pretty much it about Capricorns. We're just to ourselves but we're really out there at the same time. So I would say we enjoy our solitude but I mean at the end of the day, it also depends on what cat purring talking to I got no December Capricorn's are like different like Chelsea is different. + I know another who else is a December Capricorn Hennessy, I don't know if y'all know Kara dbe's little sister. They're just I feel like December Capricorns are more like outspoken like, you know, so but yeah, okay. So speaking since it's on the topic of like ourselves. What is one of your biggest pet peeves? Whoo, one of my biggest pet peeves is probably third. Mmm. You're very clean girl. Oh my gosh. I'm but + Thing is I'm not I think I'm clean but then I'll get around somebody who's really clean and I'm like dang but I don't know my pet. Peeve is like just too much junk too much dirt. It just I can't think clearly for me. But that's just living in a space living in a space where it's not working eyes because that I can't organize my mind. I don't know what it is and why this is no I do know why this is a thing because we always ancient + We were taught cleanliness is Godliness. Yeah, and so yeah, I think that's my pet peeve. Like if my house was I don't like inviting people over my house is dirty because I don't know. I just I feel like I got to show you the best and I got to give you that like, I don't know that's just my pet peeves. That's just me personally because I don't know. I just I think it's because like I said, I grew up in a household where was a lot of siblings and so the best way like I've I like to keep + My room where I was taught in bought up by my father to keep my room clean and so ever since then it's like been a part of me and I don't know when you're in a room when you're in a house with so many people it's easy for things to get dirty. And so I kept saying by just keeping my space together. Yeah girl, that's good. You're so clean. It's tough those two. Okay. Hmm name two of your expanders and explain. + Why they're your expander. So when I say expander like two people who really influence you and you see yourself through them and they motivate you to get to where you want to be. Hmm. Okay. So one person that I would say is this girl her name is Jamila Mustafa. I don't know if you know her but you know her yeah, so she is I know she's like a I don't know exactly what she does but I know she's like on MTV I think she's like a fish you like these he holes. + Like yeah, she does that those type of things like interview celebrities like when he come on to bet and like she's great. So I actually met her when I was Miss Morgan and like when I was Morgan we had to do this pageant like the national black college whole Alumni Hall of Fame and I don't know what it was about her. But like I was crying like and oh my God, and my mom said you like I'm not super super quick to cry. But if I'm touch I will cry but like I'm crying set up. + They're giving me like you need water. Give me a second glass of water. Like I really like she really really touched me and I don't know what it was about her. But like at the top hmm, I did time when I was Miss Morgan. I was really overwhelmed. Like I was I really really really really overwhelmed and like she was sharing her story and she was sharing how she was Miss Del State. She was like a former Miss Delaware State University and she was like talking about how like she was just so stressed and she ended up getting sick and like really + Ali sick in like she is almost like wash everything out and so for whatever reason I just like like her just talking about the importance of like taking care of yourself like it just some some it me like really really connected to her and then I was like girls like I don't know what it is about you, but I love you like and then in the pageant like we had it was an event called call to Womanhood like such a powerful session and later the pageant was later that day. And so I ended up. + Place in first runner-up in the pageant and like an I seen her after she was like interviewing people and I was like, oh my God, like did you see me? Like I was first starting up and she was like, oh we're twins. I was first runner-up. So it was like dang like it was just like a connection with her and then the following year. I had got an opportunity to be on the panel for the call to a woman and she was again on the panel and I don't know what it is about that girl, but it's like if any time only came in contact with her twice, but like when I come in contact with her, I feel like dang it. + I'm on the right path or I don't know like I just feel like I see her and like it's like a room like it's like I feel like I see her in like God is showing me like this is where I'm taking you like not in her path, but just like the way her. Oh God, like I can explain I just love her. So that's definitely one person. Um who and another person + And what we said a person that does would like someone who like an expander so someone who you're able to watch and you're saying okay like you said with your Miller like yeah, so I got another one Meek Mill. I'm so serious. I love me can like Granite like like I mean, I love me because Micah's so real, you know what I'm saying? And I love that like now that he's like growing and like, you know more into his self he + At the same time he still changing to who like still staying true to who he who he is and he's not changing and like I remember I was watching like an interview and like he was like telling someone like yo, I'm not no activist. I'm just Meek Mill like, you know what I'm saying? I love how like he takes his place. He's aware and conscious of his platform and he takes it to inspire people but doesn't change like he's so real and just so like to see him like make it out of the gutter and just like he's getting up there. + Is working with like Jay Z which is like the top of the game like and it's just amazing to see like and like I don't want to stay here and make it seem like I came from the gutter Gutter but I come from the riches either like you get what I'm saying? Like, I've been through poverty. I've been through all of that. So when he talks about certain things like he had this song like called oodles and noodles babies and like talking about like when all you have to eat is oodles and noodles. Like I've been there you get what I'm saying? So it's like it's just like to see him just like go and just I just love him. So like + he's another person that I literally be praying my God. Can I please meet me like his life? I feel like I know everything about him like but the truth be told like he really inspires me. Like he really truly really really really inspires me. So yeah, I was rapping but does not to name. Okay. So let me see a question that I have for you since we are talking about that is okay so friend. + Okay. So since I said that who is the first person that came to mind and tell us about a great experience that you all shared. Oh just friend the word for know so I said friend right? So when I say friend you all think about so friend who comes to mind who the first person that came to mind and like tell us about the experience that shared. Oh Asia. Asia is like one of my longest childhood friends, so + Just a little background. We grew up together ever since middle school. When do we meet exactly in middle school? I think we have mutual friends. That's how it happened. And so me and her ended up connecting like right when we met we were like, oh, yeah, we just had a bond that was just it was just bad was it it's what bill I think it's because she's a Virgo too and I'm a Capricorn and I just really love Virgos. And so, you know, we kind of we have a lot in common. + Amon and especially during that time. We had a lot in common we both played Sports when we got to high school we both were in cheerleading. We just had a we both were in track as well. And you know our bond was just there. Anyways, long story short you asked me about my experience that we had like, what is something like a great time boo a great time. It's so many how do I pick should give me like a direction? What type should it be like a like a this is like whenever like you don't even like oh my God. + Was such a crazy time I like that was such a great like just anything like a one of the most meaningful experiences when they saw him crazy fun-loving the track whatever makes you say. Okay, I see so me and Asia and this is what I admire about having like really good friends is when you go through something they feel it too and it's it's so inevitable, but mods was that my 19th or my 20th birthday. I want to say + my it was one of those either 19 or 20. I'm going to say my 20th birthday. + I had a party at a hotel in this was around the time that my father transition and he + yeah, this was around the time that my father transition in Asia was just really there for me and she felt that whole thing because she was close to my dad as well. Like I said, we grew up together from middle school and so during my party she just pulled me to the side and like she really just broke down like Julia so strong like I see everything you're going through. I feel it too and more stuff that of course, I won't talk about but she basically said she pulled + To the side and she really she just started crying and she was just like look, I feel that too. Like I feel the pain you're going through and that's what hurts me. The most is the fact that you're in pain. And so that moment right there is something that I'll never forget because even though I was trying to mask it up with drinking and so it's my birthday party. We had a hotel turning up. She was just like it would look at me and see like dang like you're so strong. I know what's really on your mind to really gone through and that's what's making me emotional. And so + So I would say that's one it because situations like that and makes me get closer to a person because you see more of who they are and how much they care about you and so yeah, that's when I'm in I was like, okay, I really got a really good friend and that's why I now we can be a part from each other for long periods of time and be good and come back together and like everything's good. That's somebody who I know for the rest of my life is like going to be there. Yeah. It's so hard to find those people in like I feel like when you find them or you have a me God + Like you got a hold on you guys. Yeah, that was really fun. And I remember like I was telling you earlier like when I seen her I like her vibe was just really good. Mmm-hmm. Yeah, she's amazing. All right. So next question for you. What are your aspirations in life where my aspirations? Okay. So, um, I want to be a speaker. I will be a speaker. Yes, we can into existence, but I want to like travel the world and you know be able to tell my story and inspire. + A woman and help women kind of like what we're doing on this podcast, but just really just being Global with it. You know, I never saw myself International more like around the country. I always said but I was watching this Kevin Hart documentary and like I saw how like he had this impact like in other countries too. So I was I mean, yeah in other countries too, so I was like why limit myself so I mean I want to be International. Yeah, that sounds so beyond myself. But yeah, so that's what I'm going to do. And I also want to be a judge. I will be a judge. + For juvenile court. I'm really big one. Like I don't know if I should say topic or I don't know about some like I guess the top of that I'm really really passionate about is mass incarceration. Like I'm really against the prison system and not saying that I'm against people going to jail because at the end of the day like if we do a crime or you hurt someone there has to be some sense of consequence, but I don't believe that the prison system is built in a way that can actually help the + People so that's something I really am like want to really really be a big like advocate for like changing the criminal justice system. And I also want to be a judge for juveniles. So yes, like right now I'm like in the process of like working with like, you know Department of Juvenile Services. I was like intern with the public defender's office in a juvenile unit. And I really truly loved it. So that's what I'm going to do. I want to be able to write books and like, you know, just be like a amazing woman but on top of that I also + Just want to be what like God wants me to be Emily wants me to be in that say that because like the plans that I have for my life are so big and I know those things will I guarantee me the money in the wealth and the same like I don't even want to say Fame but just like it'll guarantee the life that you know a person will want but it's like if I want that and that's was promise. I can only imagine you know, and like they always say like like eyes haven't seen or airs haven't heard like what God is going to do for you. So I'm like dang like + these plans that I have for myself is so much bigger, but then it's always a reminder of like you couldn't even imagine what God has for you. So like something like I feel like I'm dreaming so big - it even get bigger. But yeah, that's really good. That's really good. And you got it. Thank you girl. It's already written. Okay. So what is something that you feel like you can't live without + Something so is it this like a tangible item? It can be anything whatever it is. I can't live without this food count. Ha ha ha. Yeah, I'll be hungry something. I can't live with out. I would say water Joy is if that's not basic. Okay, that's okay. Let me get deeper. Okay. + Wasn't that I can't live without I'm trying to think what can I live without I've been trying it doesn't have to be a thing could be a person. It could be anything. Oh my gosh, you can be a person. Um, that's a lot of that's a lot of way if I put that on the person. + Okay, this is only one thing. What about you were thinking it could be a few things like I can't live without my tea. Oh my gosh, when I ran out of my mighty my awful Blends T my food for the blood. I was like, I'm breaking out and this is the reason why because the tea that I drink it has 102 minerals of the 102 minerals the body has and so when I feel like I'm not drinking it consistently. I feel like I'm missing out on my nutrients and so + I just feel changes in my body without feeling like off know that t is powerful. Yeah good. I see is powerful we could get into we did a full blend sponsorship we can yeah, we can make a whole episode on it. Okay, because when I get when I don't have that, I just feel like I'm not taking because I feel like everybody should take some type of get make sure you're getting your minerals in your vitamins in some way shape or form. That's my form and we should definitely do a daily because when we don't + Definitely filled a difference in my body. Like for example, I went to the doctor and they said I was anemic it's always knew I was anemic. But yeah, they said I was in the evening which basically means Joy get more iron and that's he has like a really lot of iron whole bunch of iron and that's around the time where I didn't have the T. So I was just like everything is going wrong. So I would say my food for the Bloods he by Up full Blends. I can't live without this going to sound bad. My phone is a big one because I need to make sure like, I can't + Talk to people when I want to and when people have an emergency and they need to call me and because unfortunately social media if I'm being honest sometime, you know, I want to check it every now and again, so that's that's bad. But I'm being honest and another thing I can't live without probably books. I'll be so bored if I couldn't read books and I feel like I wouldn't be as knowledgeable as of who I am if I couldn't read so books. It's a whole bunch of things. Maybe like my + Self-care routine. Yeah, I can't live without anything that's self care related. So that's good. That was a good question. Yeah, that's a tough cause it's like if it makes me want to thank Dang if I don't have this. Yeah, but then it makes me feel like okay now, I'm depending on other things for my happiness, right? So, right right, but at the same time like we really really dig deep and think about it. I feel like our lives are dependent on you go to things like everything that's a part of you like your car your phone. + On your friends everyday, if you didn't have those things like who the hell would you be? Yeah, that's what I'm saying. Like so it is a little scary but I don't you know, I mean, yeah, I don't like life is like meant to do just like you as an individual like that's why we have all these things but it is scary knowing that like dang of all these things that taken away like who we what what I do. Yeah, but that's also goes to say every little thing in person we come into contact with has an effect on us in some way shape or form and help. + Contribute to our growth and who we are. Yeah. Okay. So speaking of what is your self-care routine look like girl. Let's get into it. So what are the biggest things for me self-care that I do is I do take a lot of frequent breaks off of social media some like right now. I'm on a 21-day fast from social media. So some days. It could be a month some days. It could be three days like the remainder of a + Weeks and they could be two weeks but that is something that's really really important to me. Just because I feel like like sometimes I'll catch myself and I'm like dang I'm saying here scrolling. It's like what could I have gotten done or like, you know, like like, you know, you don't realize it but social media is in a sense or it can become like an obsession of what other people are doing. Yes guys. Like can we can we get the ball? No literally like + Every media really can be an obsession of what everybody else is doing and you don't realize it you're gonna think of you think you're just scrolling inside. But what you're scrolling you're seeing what they're doing and where they're at and what they're wearing and what they're listening to and what's their latest update but it's like all of that is like dang what if I just put that energy into myself, you know, so that I definitely try my best of luck do constant brakes and like I don't know like I don't wanna I feel like I'm more productive when I'm not on social media and I hate when like, I'm not on it and then I get that craving. + Until I get on I'm like that's disgusting. That's a sign. So your last year. I told myself that I wanted to start doing more frequent breaks and I think the more that I do it the more that I stay the more it's easier to let go so that's definitely one big thing a part of my self care. I also love to get my feet and my nails done like that is a really really big part of my self care and it's like it's gotten to a point now actually started doing that when I was Miss Morgan because I was like, I think just like the highest responsibility I've ever had so + That's what I was just like. Okay, like I have to take care of myself because to your girl is stressed. But yes sir point now we're like I've been like if I noticed like my nails on my toes aren't gonna like oh my like I look at my toes and like my the paint on my toes is crack and I'm not feeling good like you know, so that's like I really like try to make sure I keep my nails and my feet and cuz it's just some that just makes me feel good and like when I go I always I don't get the basic pedicure. So like I go to vibrant Nail Bar. It's + so good in Timonium for those who are in Baltimore, but it's like this package is I forgot what I can't remember what it's called, but it's like thirty seven dollars for the petty girl. I know it's a lot. I'm you know, that's not bad. I always go to the mall and they charge me $50 for your toes not even including tip. What do you get Joe regular regular? Oh, maybe that's why yeah, that's probably why because like, I mean I kind of do I think in the summer time? I'll probably start getting joe because I know it last longer we have your feet out. + This is for regular but it's like you get like a massage and they do like a clay mask on your foot is so good. It is this guy, who is this guy? Yo, he knows what he's doing. He really takes his time and it's like it's just a time for me to like just kind of like unpack and just like be by myself and I try my best like when I'm at the nail salon not to be on my phone. That's cool. And I like have like a book but when they get into the massage, that's when I put the book down. Oh, you got it. Yeah. I got it. + Really really good people but that like that's another thing that's like a really really big part of my self care. I like to get my hair done kinda I mean, I don't like getting my hair done but I like my hair being done if that makes sense. So yeah because I'm still pretty tender headed out of nowhere, but like I don't know like that's just like keeping my hair done keeping my nails that helps me to feel good and like, you know go with that myself. I mean, I would just say two more things reading that's definitely like self-care because like when I read I feel like I've become more intelligent and like I know + More like you know, I just like I just have this like I have this thing on my phone. So I have like over a hundred book recommendations. Like I have so many so so so so so many book recommendations on my phone and like I just be telling I'm like dang by the time I reach read all these books. I'm gonna be the smartest girl in the world like you knows I loved it because it helps me to feel you know, better and more intelligent more knowledgeable and last thing I'll say is church like or even if it's not church just like beating my spirit you got some because I + Actually recently just started going back to church. Like I actually stopped going to church for a while because I feel like I wasn't finding a church. That was like feeding me my spirit but like I found one which is the make sure I should put love is really good. But other than that just like listening to podcast like I like to like listen to sermons or you know documentaries or so. Let me not say church, but just doing things to feel my spirit because I am a very spiritual person and like I depend on that like I depend on my spirit to guide me, so it's like I feel like I have to do things like make sure + Spirit is fed. And but you'll get it when you see her eyes is closed. She's not at her because I was good. Oh, yes. I'm just getting into this. Well, I need the I'm trying to get deeper into this but I love massages. That's one thing about it. Oh my God, like I don't get them often and I + I actually want to start getting them more because I'm very tense and it really really helps but I brought it up because I remember the first time I really went and got a full body massage. This lady said to me self-care is not a luxury. It's a priority. Hmm, and I was like, oh that's good. And I'm and that's what I think made me really start getting them $37 pedicures because I fucked a lot of time like when people do things that make them feel good. It's like dang like I feel like self care whether that be like your nails your hair, whatever. + Is there needs to be a part of your budget like don't feel like okay when I get some extra money, then I'll do this. No, you have to make yourself feel good because when you feel good, that's when you show up good like, you know what I'm saying? So I just want to drop that blue that little weight. Yeah that little Jewel or whatever. Yeah, your body is a vessel. So you got to take care of it, right? So speaking of I guess I could just say this. So do you have like any book recommendations like any losses the children any okay how + Many do you want oh, maybe like two or three? Okay, you could give them like a brief synopsis. Oh gotcha. Okay. All right, y'all what y'all want to hear say? No. All right. So my first and foremost book recommendation, I feel like I told you all these two before so don't want to switch it up a little bit warmer always recommend this one. It's called sacred Woman by Queen of phua. Oh my gosh. Let me tell y'all I was at a place. + Place in my life where I would say I was kind of lacking guidance and you know, it was kind of a very depressive stage in my life. And so when I just literally just came and I was at the bookstore and then that book I just looked at it and I felt it and I was just like, ooh, I want this book. It's a purple really beautiful purple book and so it stuck out to me and I started reading a little bit and I was like Yep. This is the one and so + so just a quick synopsis of that book. So queen of fool. I actually just wanted to go see her on my birthday. She is so amazing. Like she's one of my expanders I would say and so this book a synopsis so she goes into ancient kemetic history, which is ancient Egypt Egyptian history and she goes into she gives you a synopsis of all of that which basically gives us an idea of who we are where we came from. + We started originally and then she talks about so many things about being a woman like everything that goes into being a woman from the womb to how we should eat to how she talks about the 42 laws of my eye, which is very similar to The Ten Commandments, which also is said to have derive The Ten Commandments are said to have derived from the 42 laws of mine. She tells you + You it's just so much that she gives you information on about being a woman. She talks about miscarriages and why black women are having miscarriages and how to how to heal your body through that and she goes into it y'all shit. If you're a woman even if you're a man, she has books like that on for men. But if you're a woman like I really recommend that book because it just goes in and so much that we deal with from infections to abortions to + Heartbreaks to you know, certain things we just deal with as a women as women. She also has in that book is called. I believe the she has gateways so through each Gateway show guide you on exactly what you should do. She mentions ancient deities in each Gateway that are that are she says kind of help you get through that Gateway and then she'll have certain practices that you're supposed to do. So, for example, she may say + Build an altar for your favorite ancestor or build an altar for yourself, but you know build an altar for you and visit that altar every day and just speak wise things into it and speak life into it and you know write down things you want the this is just an example but through each Gateway based on whatever the Gateway is. She'll have you do things so that you heal through that so one Gateway maybe for example healing your childhood trauma and then show you know, show you + Actively what to do what to eat she talks about what colors you should wear through each day because she goes into the history of which what the meaning behind the name of every day throughout the week. She gets into it so that book yeah that book. Oh my gosh, I would swear it. Yes. We're on that one. Another book recommendation. I would say this autobiography by Malcolm X. I about Malcolm X of Malcolm X I can see say that book was really + Good because it taught me a lot about Malcolm X that I didn't know and so that book just really I haven't finished it yet. But it's one of you know books where you just want to keep reading and reading reading it was that type of book where I kept reading. I wanted to keep reading and then I came across this man on like I think I was on like a train and he was like, oh I read that book like three times. That's a really good book and I was like, yeah. Yeah. Yeah. It's a really good. It really tells you about his story of Mike where he started which you would never expect. + To know that Malcolm X started where he started to where he is now and so well not now, but we're here, you know made it to so yeah, those are mine. Okay recommendations that makes me want to get a book. Yes. Yes. Okay. So I'm gonna jump a little into it since we're getting low on time. Okay, what would you tell your inner child right now Ocho? + Mmm, yeah, what would you tell your inner child right now? + Hmm. I think that if I had to like tell my inner child and like I feel like that's something that I have to like release it and like think deep deep deep but like I don't wanna stay on the surface level but just like off the top of my head. I think that I would need to tell my inner child like like you have enough love for you and like I don't know like how to comes out like what that even + Like but I think that one thing and it's crazy that we're bringing this up because I was thinking about this when I was on my way here. Yeah, like so I as a child have really bad. + Tang now you got me thinking because it's so much but yeah, so this is just one thing so as a child, I have really bad separation anxiety. Like I have really bad separation anxiety and I think it came from my mom when she was when I was young my mom used to work a lot and still like I used to always use the drop me off every like I don't want to say she was the drop me off any and everywhere but like someone was always babysitting me like, you know, whether I was at my nana's house. I was at my + My mom's house or I was at my grandmother's house. My grandma's house. Like I was just not home you get what I'm saying? And I just was like, I think like now looking back. It's like my mom was a great mom, but it's like I think I needed her a lot more than what she was there for you feel me and especially when she got sick and made it really hard for me because it was like dang like I haven't even made that connection with you yet, and it's like now you're sick, and I'm supposed to take care of you. + You and that's a whole nother you gonna I'm saying topic, but like I said, just like I think that's where like the separation anxiety came from and then um, I think it passed on to me now and like I had spoke about earlier. I'm very attached to my friends. I'm very attached to my friends and I really really love I like being around people. Um, and obviously not just being around just anyone but people that I love and that, you know, I feel love me and things of that nature but + I want to be more comfortable now my state where I'm at in my life. Now. I want to be more comfortable with being alone. So at a point of time, I was literally uncomfortable. Like literally I could not be alone. Like I remember like crying to my firm and I like please don't leave. I don't want you to be like if you leave them a coming to sleep like and I'm just thinking about how heavy of a burden that could be one of friend, you know, and she was amazing like she was stay with me day in and day out and you know, like that's just a whole nother topic but + I'm not there anymore. Like I can definitely be alone. But when I'm alone, I'm always on FaceTime. I'm always calling someone I'm always like scrolling on my phone like and I just want to be able to just like I just want to enjoy my presence more, you know, and I think that like if I can get to a space with them myself where like I just couldn't, you know false super in love with just like my energy and just like, you know just be alone like yeah, but that's really something I'm actually kind of like trying to work through right now. + But I know that that rules for my experiences as a child, so yeah, I would like tell my inner child like your love is like enough like you like you have what you need like I like like I can protect you like you're gonna say like I think at times like I'll feel like like I'll be thinking about how much I don't trust people and then like I'll be thinking back like dang like do I even trust myself you get what I'm saying? So like just developing like that love and that could I Feel Like Love Is everything like oh, yeah. + You Need Is Love and pure love you I'm saying I feel like I'm pure love with comes with trust and it's comes with so many other things so I think if I can like have that love Within Myself like that would open up so many things to tell you and your dad was a bomb joy in a child though just say say I love you, I love you you look sometimes that's all it takes is just saying like I love well we should yeah y'all so let me speaking of the where that question came from + I was reading a book spirit Spirit hacking my Shaman Derek and so in that book I was on a plane and he was just talking about how words are powerful the words that we say to ourselves especially as power are powerful and he went into how he built a relationship with himself. He said he started off. Well, he's a spiritual Shaman so he's able to you know, speak to his spiritual self like in a + A different way that we may not understand but he said he asked his inner child. He was just he said I love you and then he felt his Spirit say back to him really do you really and he was just like he said that really hit him because he that had to be a question that came up like, oh really you love me because that's something he never did before that point. But he's like, yeah, like I really love you and he said from that point on he took time everyday to talk to his to his inner child, which essentially is + Is all because we're always going to we all had that inner child that will be with us for the rest of our lives. Like essentially we're grown children. And so so yeah, he's like his inner child said really and he spent days after that just speaking life into himself. He said he was going to mirror because that's the easiest way to do it because you can literally look into your eyes and see you know that portal to your soul. And and yeah, and he was just Speak Life Speak life life, and that's how the altar. + He said he built an altar for his self. He put a photo of himself. He made it look really nice. He said you could put flowers on it. You can put anything that makes you happy on this Altar for yourself and every day spend time with that Altar and just talk like okay you can whether you want to meditate with it. What are you whether you want to just speak some great aspirations? He said we need to take time to take time to really love ourselves and heal our inner child. Yeah, and that's why + That's where the student topic that's a yeah, and her child loving the inner child because your inner child is literally your souls is a spirit. That's something that's your inner child has always been with you. And essentially we just want to make our inner child happy. Yeah. I remember I was at this event. I was at a conference this lead Alicia Reece. I love her she's amazing and she like does this whole like a vent about I'm not of them but like she leaves his session about like leading with a broken heart and + like, you know, she doesn't feel like the HBCU queens and like just talking about how like, you know, like as an HBCU Queen you have to like stand up and you get the wavy and to be in front of everyone but it's like what about everything else so she gives you know them a time to like unpack that and at the end she does this thing where like she has you like look at your phone and like tell your inner child like I love you and like I'm never gonna hurt you again and Wu Chao is like that's it like but yeah that you just motivated me to like want to definitely unpacked. + And he motivated me in that book. I was just like tenting. Yeah, why don't I take time every day to just talk to myself. Yeah, look at myself in the mirror, right and just you know Speak life and that's so important because it's making me think about like, okay like right now like, you know, we're no longer children like we're young adults, but then that makes me think about how like will then become Adele's and then it's like if we're not careful now, we'll be having the same conversation about healing your young adult and then he'll hearing so it like + Like it it can become a cycle. But that was a bomb Joy Jolene of wheat, but yet I was a really really good question. Okay, so we're gonna do about like two more. Mmm. I'm gonna do some more we got something so okay, since we're getting deep tell us about a specific time. That was a red flag. Okay, so basically like tell us about + Time where it was like boom a red flag, like I need to now go on a healing Journey like something that made you realize like oh, this is not good. Oh like in life that like LED you to your healing Journey. Oh, wow, red flag from me is most likely over drinking. Mmm when I'm like, okay, so I know the difference between when I want to drink to have a good time and when I want to drink to fill a void and so when I'm drinking to + Too much. I'm like art. Stop what's going on. Like why are you really drinking? Why do you feel the need that you have to drink? Yeah, that's a big one for me if I'm partying too will ya alright, so my personality if I'm if I'm doing anything, that's too fun too much. I'm too distracted. So my personality is more work than play, but when I do play play hard, but + Worked in place. So when I'm playing a little too much, I feel like I'm out of balance and it's something that I'm trying to escape from that I'm not addressing. So yeah, I would say over drink and that's a red flag. It always causes me every time it always makes me stop and look within and see Joy was going like I that's when I have to pull myself up by the shirt and say look you need to stop especially if I'm getting drunk if I'm drinking to get drunk rather than drinking, too. + Have a good time and Vibe. Um, so yeah nights where I can't remember that's when I'm like, okay. So have you ever had a time where it was like like a specific time was like this is not good. Um, okay a specific time. + This is going to be bad guys. Don't be mad. I know my sister is listening to this. Don't tell Mom I'll fuck. Um when I drink + I drank a whole lot this one night. When was that was this in God know this was? + This was after so basically I drank a lot and then I had to drive home in like oh actually do I have another story for y'all shouts how that story it is story. It's like it was really good. Yeah. Okay, so let me get to that so I drink a lot and I had to drive home and I was just like + The next day I woke up. Like how did I get home? Mmm, that's scary. I can't remember. Yeah, but I did everything perfectly. I park my car my God got home. I took myself in bed, you know, I did things perfectly but the next day I was just like, how did I get home like how my hair and my car I had to look outside. So that's when I was like, okay, I yeah you need is something going on. So we're you drinking too much. You're going out too much. + You need to look within and see what's going on. And that's when I knew I also like I was in a depressive mood. I dropped my phone. Yeah, that's a good question. Yeah, it's a really good one. Okay, one more each. Yeah, okay, um, a mighty all we did not tell each other these questions. These are just like I think this would be good for you. Okay, I think this would help some people. + I'm listening. What's the biggest obstacle? What's the biggest thing that you've had to heal from? And how did you do it? Like what's the biggest obstacle or one of the biggest if that because I know the biggest can it be something that I'm still going through or something? I had to like get. Yes. Okay X question. No. No, actually, I want something you got past so that people listening don't know like how yeah, they'll get some in sport of it. Okay. Can I ask a question? So what's one of the biggest obstacles you had to heal from and then how'd you hear? + For me and I know healing is never like oh, it's not A to point B, but so yeah, I guess if you're still healing from it, yeah. Okay. So one thing that I would say is one of the biggest things and I'll say that I healed from it. + but + I was at that I healed from it for sure. + I don't know that I can take a hundred percent. Yeah, but I can definitely say it majority like ninety eighty percent of is healed and the other percentage of it is the fact that like healing is not a destination. Yeah, I'm saying like it's still ongoing thing, but I would have to say the way okay, so it's like a two-part thing. So I would say the way that I feel about myself. Mmm and the way that I felt about myself. + Transcend into the way that I carried myself. Okay. So when I was young I really hated myself like I did like I remember even being like, I don't know. I thought I had a conversation with someone like yeah, and I was young so I didn't understood the magnitude of what I was saying, but I was like like I hate myself like I mean, there's nothing that I really like about like it was like nigga my heart hurt right now to think that I like felt like that at a point in time, but I remember that yeah, I really don't like myself like + I hate myself. Like I just I don't know like I'm trying to think of something I like and I don't like I really remember like having that conversation and I really didn't like myself and I was reckless in return like you going to plan and I never was like I never was like I hate myself. So I'm going to do this. You know what I'm saying? I just acted like I was just a noxious and not in a way where it was just like girl what but I just didn't carry myself with + Edu do what I'm saying. Like I didn't like I will be just outright just cursing like bitch what the fuck is sugar-free like, but I feel like when you carry it well for me in my walk like carrying like I would never do that you what I'm saying? Because now I care about myself. I love myself. I understand like I want to show up as my best self at all times. If I'm doing that. I don't feel comfortable with doing that you're saying so but I was just like just like that like smoking on Instagram didn't care who was see + Like I just am because I felt nasty about myself. I would treat people that way to like, I don't think I was like the nastiest girl in the world, but I'd like I remember like people who I quote unquote thought we're like weirdos or that were like corny like I would bully them you get I'm saying like say what I want to them like take their lunch like being crazy like that. Yeah I'm saying but like the more that I love myself, I feel like the better. I treat people you get what I'm saying? So it was like it took me a + A lot of like and I think that I can like now say I'm Healed from it and like I'm like, I'm at us like I had to get some point was like, okay, I love myself but like now I'm in a space where like I'm falling deeper in love with myself. But yeah, so just like I didn't I didn't like myself. I really really did it and like I feel like you can see it in the way like my hair would just always be a mess like I would just my clothes like I just I don't know. + I was like super sloppy but like looking at the way that I carry myself now and then then it just was like totally different like the way I treat people now in the way I treated people then so that was like something really hard to help from and I think that me not loving myself and me hating myself like came from a lot of other things like, you know, just some childhood traumas that I've experienced that led to that but I didn't like myself. So that was really a hard one and like, you know coming with not liking myself or not love. + In myself enough like then led to like me dealing with men or like allowing men to treat me some type of way. It is like came and a lot of like that's a whole other podcast it is so but to answer your question some one of the biggest obstacles I had to overcome was just just loving myself like because when I didn't love myself, I just couldn't be my best self. So yeah, that's a good one. Yeah. That was a good question. So yeah, I think + Is that that we do are two questions. Um, you want to do one more year the still one more do what I want to do one like a fun one. Okay one ended up. I'm going down Okay, so, let's see. All right. So we're going to ask each other one more question and this will be like, I guess like more of a fun. I want to laugh so tell us. Yeah. So my last question to you. It's probably + Okay, tell us about a bad dating experience that you had own like whether it was like a real bed. Yeah real bad like something that was just go. This is a mess. Oh my gosh. Okay. Okay. Okay. Hold on. Let me think of one, um a bad date. Um, where does have to be a day just like a like something that was like, this is bad. Let me think because I know I have one deep down in our + Let's see. Oh, oh, hold on your sorry if I'm taking a long time a bad day or something. I was just + oh, oh, oh, that's funny. Oh my gosh. I hope he's not listening to this. I don't think so. Okay. Alright y'all so I was in college so don't judge me. But okay this do took me on a date, right? Did he drown? Yeah. Okay, so he drove us. So this mind you this is in college. I think I was like a I was young so I was probably 18 maybe 19, probably 18 and so boom + So he takes me on a day. We're going to the movies blahblahblah was it's a Valentine's Day date. No, no. No it was okay. So then um, yeah, he takes me to the movies and I must be honest with y'all. I'm not a smoker. I don't I don't it's just not me people get mad every time they try to test that out with me and I'll fall asleep on them. I'm a naturally tired person. So if you want me to smoke with you nine times out of ten, I'm gonna go to bed. I'm gonna go to sleep. + Or I'm a want to start talking about the wonders of the world. It's one of the other so long story short. He wanted to do that and then take me to the movies. So long story short y'all wheat I slept through that whole entire movie when I tell you I was not I was like, I know I had my mouth open ever my God. So I was knocked out the whole movie mind you hold on so - you okay, so my job took we + And this is impossible or and we're walking to the movie theater in a rat ran across. Yes in mind you I'm not from the city. So I was like, what was that? He was like that was a rat and I was like y'all like, why are you just saying it like that's normal. I can't do that. Well, that was big that thing was big. So then yes, I'm gonna do all that. I'm like no. No, no, I can't do this. + This and then literally ran right on top of our feet. Oh my God. And so then like I said, we got into the movie theaters. I slept through the whole movie. He didn't even try to wake me up. So that's why not. Yeah. So then at the end he is like I heard people clapping then I woke up. He's like you slept through the whole movie. He was so mad at me and I was like, why didn't you wake me up and he was just like girl and he was so mad at me. I think he didn't talk to me for like a few days after that. Yeah, he was so mad. So that was just + But he I don't even think we entertained each other after that. So yeah, that was interesting. Sorry. I still I still feel bad. I'm like dang that boy wasted his money. Okay? All right, so fun little question and this off. Hmm. Let me see. I just have one in mind but + Okay. + Okay, let's go with this what tell us about? Okay, what comes to mind when I say this awkward moment that you had awkward moment, you came that so because we're desperate or this topic. I'm going to tell you about a bad experience bad date experience because that's what I thought about what you said I could moment. Alright y'all so I used to work at Friday's right? I use them work at Friday's I was a server and it was this guy. + He was a cook, you know, he was he was a little kill like he wasn't like dang he fine but he was cute and like, you know, he's hooked the food out for me, but I will say this I'd be like you didn't say right. So once I'm he's like, he's like, yeah like you should let me take you out. So I'm like Okay, cool. So basically we talk and like, you know, it was like maybe he said that I would say it was like Tuesday and Wednesday. We was going out that Saturday. So, you know every day we had where keep going to say those things. + Oh, yes. So like you going to dress up by Blossom like dress up like all right. Good, right. I'm gonna get he's like, right so he's like he's like, oh you like shooting guns. So he like nobody like you want to take this to the gun range, right? So I'm like, all right. So remember he said you one dress up, right? So girl, so I'm thinking like he want me to dress up. So I'm trying to think like should I wear heels, you know, I gotta put the fit on like and his demeanor. I mean, obviously we're at Friday's we both have a uniform you can't really tell but I his demeanor. + Why he was fly. He's like that's just a vibe that I got from him like this one. You just get some quick money at Friday's that's that's how I perceived it. So, you know, I got my hair done nails and everything right mind you this this sounds real bad. Please don't judge me, but I felt like I have a good fit. Like I have nothing really really good to wear. So I call my friend. I'm just like girl like, you know, you think you got something you could let me like I just I'm about to go on his date like, you know, like I really want to look cute, but he asked me am I going to dress up so I want to make sure + Sure that you follow me. I'll put my best foot or so mind you I had this car my car and my friends know it was Chrissy that joint and it that's a whole nother story has held the long story short my car was at a space will start in Breakdown because someone had put freaking power steering fluid and my brake fluid so my car was like really it will be shaken. Like it was really really bad right mind you so my mom told you I was gonna get the clothes for my friend since she was like 30 minutes away from my job that + Lie to you not I was so scared. I was gonna die that night. My car was shaking so bad start smoking everything. So I'm like yo, I'm Eliza are doing all this to get a fitness better be the best date of my life. So I go I'm get she I go mind you I'm not even going to get the fit. I'm going to pick her up. I'm going to pick her up 30 minutes away. Then I got to drive back the Morgan. So it's like another 30 minutes and some change back, but I'm doing all that is trying to get the fit mind you. + The car at this point is breakdown. I had to get AAA to like bring the car back. It was a whole mess writing. It was a lot going on, but I'm like you fucking that his Vibe is school his demeanor school. Like, it's me for my dress said he went to into the gaming just now. So I'm like that was really annoying. But I was hoping it was going to be worth it right girl. So put the fit on I'm like looking good. I have my braised. I have my red lip. I know I was + Good like it was like so chill like him a little ripped jeans on I have like a long shirt that with these little cat like I look real cute like it was like real real cute but still like not too much. Right and I think he even asked me if I was going to wear heels. That's the crazy part, right? Oh, so he picks me up. + Homeboy had a white tee on like white tea freshen up. The hands back has some straight leg jeans on and some Air Force Ones like no little more butter more fit. So when I see the fit, I'm already don't all cuz I'm like at this point you you gasping me up like you gonna dress up and you literally got like the Baltimore starter kit fit one flat out the bottom or started go flat out, right? So I'm like + Homeboy, so mad you I remember it was spring break. So it had to be high. It had to be about like hmm. I would say maybe like 75 like degrees it was it was nice outside like you could just have a shirt on right. He had the nerve to be like, yeah. I had my leather jacket on but I took it off because it's too hot see the thing is I don't know about our listeners and I don't know if they're from Baltimore or what but you gotta see the straight-leg Jean and he's kind of built so you it's tight. + Right. That's another thing. So you got the leather jacket on the white shirt, like straight leg jeans. No cuff at the bottom. Nothing. It's not even and then some all-white Air Force One, you know, like if you if they're not from Baltimore they may not get it. But if you are from the area, you know that that's a flyball to morph it but his best Yo his best so I already turned off as it is, right. So like I said, he was talking this he's look at his big game like + Really wet. The Take Me Out show me around blah blah blah. So we go to the gun range. It's cool, but I could tell like you for me. I prayed made him a little nervous because he like he was trying to help me shoot the gummy you could tell he was kind of like scared to be on me. Like, you know behind me whatever the case may be after the first at this point. I'm already turned off the fit had me done. That was it especially after I almost lost my life. Yeah, you get what I'm saying? So that's that so then so he like you want to get another gun and shoot another got I don't want to I think I'm ready to go home. So he like you hungry. + Like we should go grab some food. So I'm like, okay, like let me just relax them another chance you for me the way he talks you think he's about to take me to a nice restaurant. So then I'm like, all right, babe. We could go get some food. So mind you homeboy pulls up to IHOP, right? I like high places. So then, you know at the time I was still in school and y'all know I went to Morgan so I'm like son. + Hey God, I want to Spring Break and all I could do is pray that no Morgan students pull up because at this point I'm with this Baltimore do like straight flat out. Like that's just it like you get what I'm saying? So I'm praying that nobody sees me. So at this point, I'm just like yeah, you know, I got to work later. So I was like, I think I it's time for me then, you know go home I get myself together by blah. So I'm always very intrigued by like the culture of Baltimore and like, you know, like this the way in life about tomorrow. So like prior to that they like I will always be asking him. + Him like, you know, like tell me about it. Like like what's your family? Like are they involved in the street so that you can find what's up? So before he let you know I'll take you through. I'll show you around Bubba blah. So at first I was with it until you feel me. I saw defending took me to IHOP. I was not with it from there. So at this point I'm acting sleepy like like I just I don't know. I got that itís really you for me. Try to get him to take me home. So he's like, all right. I think he won't be back matter of fact before I take you home. Let me you feel me take you from ticket where I'm from. + Joy you shot a total switch up Sister. He literally became a b-boy boys in the hood. Like I was well I was taking see me because now he's driving regular as soon as he like turns into a black that like turn like that you won't be like was his area that he likes at bag put their hand on the will roll the window down. I have it on slow like so what is going on then someone drove past? He liked it diggle Rico and his picture. + Jess totals which is a total switch a total switch a totals with a total switch. Yo, I'm telling you he's going so slow and this week now I'm getting nervous. What did he do to make you feel that way about him you you tryna my using was Barry. I'm weeks. I'm like you trying to be boy Barry and I had his whole demeanor. I'm just like this is so bad, but you said awkward. + I felt the most awkward because it was like a I think it was a Morgan student. Who was our waiter and I have and I was so embarrassed. I was like, you know what I miss I did was what pray like Miss sophomore at this time. Yeah. I was like this off my chest I me you know, I have a good name a good look for myself and I'm like, I'm sitting here with this b-boy and I'm just like son that was it. That was the worst but that was my heart will dating experience. Yeah a lot a lot a lot then I had the nerve to leave. + But you know when you go to the gun range you ever been no. No we go to the government in you like shoot it. Like they give you the paper like you have the paper with like all the holes in it and I left it in his car. So I guess he was feeling because he was trying to like me but hey like you left it in my car. Let me know when I could drop it back while I was not with it like no not not not not with him never. But yeah, I had to share that with you all that was crazy. But in some variants, oh my gosh hilarious. Whoo. Yeah, but we hope that shot enjoyed. + Overall, like we said we have talked about a lot of deep topics. So we just kind of wanted to like, you know, kind of let down a little bit and like let you know about who we are like, you know, not so official and not so like trying to drop gems but just like what's up. We are friends. Yeah, you know, so we hope that we that shall enjoy make sure that y'all follow us on Instagram at official back to her and that too is the number to + Sure that you repost share with your friends. And yeah, and speaking of next month is Black History Month. Yeah, so we're going to have amazing series coming for you. Also make sure that you all stay tuned. Yes, you guys will love it and you definitely stay tuned in continued like if you missed the last episode make sure you catch up. Please catch up. Yes in the episode before that. Both episodes are regarding like we said before spirituality. + Religion in you don't want to miss out on that. So thank you guys for tuning in with us and being a part of our conversation and get to know us better. We really appreciate it. And my Instagram is at Joy Jolene Jo y Jo ele any and Minds is accordance of bread with three T's. Thanks guys. Yeah. + """) + return input.upper().split(" ") + + +fn get_freqs(wds: List[String]) raises -> Dict[String, UInt64]: + var freqs: Dict[String, UInt64] = Dict[String, UInt64]() + for wd_ref in wds: + wd = wd_ref[] + if wd in freqs: + old_freq = freqs[wd] + freqs[wd] = old_freq + 1 + # freqs.__setitem__[String](wd, old_freq + 1) + else: + freqs[wd] = 1 + return freqs + + +fn main() raises: + var wds: List[String] = get_wds() + var n_wds = len(wds) + + var out_path = "report.csv" + with open(out_path, "w") as outfile: + outfile.write(str("version,n_wds,n_keys,the,sec\n")) + for _ in range(10): + var t0 = now() + var freqs = get_freqs(wds) + var t1 = now() + var duration = (t1 - t0) / 1_000_000_000 + var the: UInt64 + the = freqs["THE"] + var n_keys = len(freqs.keys()) + var out_str = str(n_wds) + "," + str(n_keys) + "," + str(the) + "," + str(duration) + "\n" + outfile.write(out_str) + print("DONE, saved to", out_path) + diff --git a/dict_benchmark2.mojo b/dict_benchmark2.mojo new file mode 100644 index 0000000000..6fda1123c6 --- /dev/null +++ b/dict_benchmark2.mojo @@ -0,0 +1,29 @@ +from collections import Dict +from time import now +from random import * + +alias iteration_size = 2048 +def main(): + var result: Int=0 + var start = now() + var stop = now() + + small2 = Dict[Int,Int]() + start = now() + for x in range(100): + for i in range(iteration_size): + small2[i] = i + for i in range(iteration_size): + result += small2[i] + stop = now() + print("Int dicts:", stop-start, "ns", result, "rows") + + small3 = Dict[String,String]() + start = now() + for x in range(100): + for i in range(iteration_size): + small3[str(i)]=str(i) + for i in range(iteration_size): + result += len(small3[str(i)]) + stop = now() + print("String dicts:", stop-start, "ns", result, "rows") diff --git a/docs/changelog.md b/docs/changelog.md index d6c831da5b..92cbdcba49 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -16,6 +16,10 @@ what we publish. ### ⭐️ New +- New `Int.from_bytes()` and `Int.as_bytes()` functions to convert a list of + bytes to an integer and vice versa, accepting the endianess as an argument. + Similar to Python `int.from_bytes()` and `int.to_bytes()` functions. + - `StringRef` is now representable so `repr(StringRef("hello"))` will return `StringRef('hello')`. diff --git a/docs/manual/.ipynb_checkpoints/control-flow-checkpoint.ipynb b/docs/manual/.ipynb_checkpoints/control-flow-checkpoint.ipynb new file mode 100644 index 0000000000..8ee4dab294 --- /dev/null +++ b/docs/manual/.ipynb_checkpoints/control-flow-checkpoint.ipynb @@ -0,0 +1,887 @@ +{ + "cells": [ + { + "cell_type": "raw", + "metadata": { + "vscode": { + "languageId": "raw" + } + }, + "source": [ + "---\n", + "title: Control flow\n", + "description: Mojo control flow statements.\n", + "---" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Mojo includes several traditional control flow structures for conditional and\n", + "repeated execution of code blocks.\n", + "\n", + "## The `if` statement\n", + "\n", + "Mojo supports the `if` statement for conditional code execution. With it you can\n", + "conditionally execute an indented code block if a given\n", + "[boolean](/mojo/manual/types#booleans) expression evaluates to `True`.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "It is warm.\n", + "The temperature is 77.0 Fahrenheit.\n" + ] + } + ], + "source": [ + "temp_celsius = 25\n", + "if temp_celsius > 20:\n", + " print(\"It is warm.\")\n", + " print(\"The temperature is\", temp_celsius * 9 / 5 + 32, \"Fahrenheit.\" )" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can write the entire `if` statement as a single line if all you need to\n", + "execute conditionally is a single, short statement." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "It is warm.\n" + ] + } + ], + "source": [ + "temp_celsius = 22\n", + "if temp_celsius < 15: print(\"It is cool.\") # Skipped because condition is False\n", + "if temp_celsius > 20: print(\"It is warm.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optionally, an `if` statement can include any number of additional `elif`\n", + "clauses, each specifying a boolean condition and associated code block to\n", + "execute if `True`. The conditions are tested in the order given. When a\n", + "condition evaluates to `True`, the associated code block is executed and no\n", + "further conditions are tested.\n", + "\n", + "Additionally, an `if` statement can include an optional `else` clause providing\n", + "a code block to execute if all conditions evaluate to `False`." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "It is warm.\n" + ] + } + ], + "source": [ + "temp_celsius = 25\n", + "if temp_celsius <= 0:\n", + " print(\"It is freezing.\")\n", + "elif temp_celsius < 20:\n", + " print(\"It is cool.\")\n", + "elif temp_celsius < 30:\n", + " print(\"It is warm.\")\n", + "else:\n", + " print(\"It is hot.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + ":::note TODO\n", + "\n", + "Mojo currently does not support the equivalent of a Python `match` or C `switch`\n", + "statement for pattern matching and conditional execution.\n", + "\n", + ":::" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Short-circuit evaluation\n", + "\n", + "Mojo follows [short-circuit evaluation](https://en.wikipedia.org/wiki/Short-circuit_evaluation)\n", + "semantics for boolean operators. If the first argument to an `or` operator\n", + "evaluates to `True`, the second argument is not evaluated.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Short-circuit \"or\" evaluation\n", + "Executing true_func\n", + "True result\n" + ] + } + ], + "source": [ + "def true_func() -> Bool:\n", + " print(\"Executing true_func\")\n", + " return True\n", + "\n", + "def false_func() -> Bool:\n", + " print(\"Executing false_func\")\n", + " return False\n", + "\n", + "print('Short-circuit \"or\" evaluation')\n", + "if true_func() or false_func():\n", + " print(\"True result\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If the first argument to an `and` operator evaluates to `False`, the second\n", + "argument is not evaluated." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Short-circuit \"and\" evaluation\n", + "Executing false_func\n" + ] + } + ], + "source": [ + "print('Short-circuit \"and\" evaluation')\n", + "if false_func() and true_func():\n", + " print(\"True result\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Conditional expressions\n", + "\n", + "Mojo also supports conditional expressions (or what is sometimes called a\n", + "[_ternary conditional operator_](https://en.wikipedia.org/wiki/Ternary_conditional_operator))\n", + "using the syntaxtrue_result if boolean_expression else false_result, just as\n", + "in Python. This is most often used as a concise way to assign one of two\n", + "different values to a variable, based on a boolean condition." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The forecast for today is cool\n" + ] + } + ], + "source": [ + "temp_celsius = 15\n", + "forecast = \"warm\" if temp_celsius > 20 else \"cool\"\n", + "print(\"The forecast for today is\", forecast)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The alternative, written as a multi-line `if` statement, is more verbose." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The forecast for today is cool\n" + ] + } + ], + "source": [ + "if temp_celsius > 20:\n", + " forecast = \"warm\"\n", + "else:\n", + " forecast = \"cool\"\n", + "print(\"The forecast for today is\", forecast)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## The `while` statement\n", + "\n", + "The `while` loop repeatedly executes a code block while a given boolean\n", + "expression evaluates to `True`. For example, the following loop prints values\n", + "from the Fibonacci series that are less than 50." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0, 1, 1, 2, 3, 5, 8, 13, 21, 34" + ] + } + ], + "source": [ + "fib_prev = 0\n", + "fib_curr = 1\n", + "\n", + "print(fib_prev, end=\"\")\n", + "while fib_curr < 50:\n", + " print(\",\", fib_curr, end=\"\")\n", + " fib_prev, fib_curr = fib_curr, fib_prev + fib_curr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A `continue` statement skips execution of the rest of the code block and\n", + "resumes with the loop test expression." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1, 2, 4, 5, " + ] + } + ], + "source": [ + "n = 0\n", + "while n < 5:\n", + " n += 1\n", + " if n == 3:\n", + " continue\n", + " print(n, end=\", \")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A `break` statement terminates execution of the loop." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1, 2, " + ] + } + ], + "source": [ + "n = 0\n", + "while n < 5:\n", + " n += 1\n", + " if n == 3:\n", + " break\n", + " print(n, end=\", \")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optionally, a `while` loop can include an `else` clause. The body of the `else`\n", + "clause executes when the loop's boolean condition evaluates to `False`, even if\n", + "it occurs the first time tested." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Loop completed\n" + ] + } + ], + "source": [ + "n = 5\n", + "\n", + "while n < 4:\n", + " print(n)\n", + " n += 1\n", + "else:\n", + " print(\"Loop completed\")\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + ":::note\n", + "\n", + "The `else` clause does _not_ execute if a `break` or `return` statement\n", + "exits the `while` loop.\n", + "\n", + ":::" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1\n", + "2\n" + ] + } + ], + "source": [ + "n = 0\n", + "while n < 5:\n", + " n += 1\n", + " if n == 3:\n", + " break\n", + " print(n)\n", + "else:\n", + " print(\"Executing else clause\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## The `for` statement\n", + "\n", + "The `for` loop iterates over a sequence, executing a code block for each\n", + "element in the sequence.\n", + "The Mojo `for` loop can iterate over any type that implements an `__iter__()`\n", + "method that returns a type that defines `__next__()` and `__len__()` methods.\n", + "\n", + "### Iterating over Mojo collections\n", + "\n", + "All of the collection types in the [`collections`](/mojo/stdlib/collections)\n", + "module support `for` loop iteration. See the\n", + "[Collection types](/mojo/manual/types#collection-types) documentation for more\n", + "information on Mojo collection types.\n", + "\n", + ":::caution TODO\n", + "\n", + "Iterating over Mojo native collections currently assigns the loop index variable\n", + "a [`Reference`](/mojo/stdlib/memory/reference/Reference) to each item, not the\n", + "item itself. You can access the item using the dereference operator, `[]`, as\n", + "shown in the examples below. This may change in a future version of Mojo.\n", + "\n", + ":::\n", + "\n", + "The following shows an example of iterating over a Mojo\n", + "[`List`](/mojo/stdlib/collections/list/List)." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "California\n", + "Hawaii\n", + "Oregon\n" + ] + } + ], + "source": [ + "from collections import List\n", + "\n", + "states = List[String](\"California\", \"Hawaii\", \"Oregon\")\n", + "for state in states:\n", + " print(state[])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The same technique works for iterating over a Mojo\n", + "[`Set`](/mojo/stdlib/collections/set/Set)." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "42\n", + "0\n" + ] + } + ], + "source": [ + "from collections import Set\n", + "\n", + "values = Set[Int](42, 0)\n", + "for item in values:\n", + " print(item[])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "There are two techniques for iterating over a Mojo\n", + "[`Dict`](/mojo/stdlib/collections/dict/Dict). The first is to iterate directly\n", + "using the `Dict`, which produces a sequence of the dictionary's keys." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sacramento, California\n", + "Honolulu, Hawaii\n", + "Salem, Oregon\n" + ] + } + ], + "source": [ + "from collections import Dict\n", + "\n", + "capitals = Dict[String, String]()\n", + "capitals[\"California\"] = \"Sacramento\"\n", + "capitals[\"Hawaii\"] = \"Honolulu\"\n", + "capitals[\"Oregon\"] = \"Salem\"\n", + "\n", + "for state in capitals:\n", + " print(capitals[state[]] + \", \" + state[])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The second approach to iterating over a Mojo `Dict` is to invoke its\n", + "[`items()`](/mojo/stdlib/collections/dict/Dict#items) method, which produces a\n", + "sequence of [`DictEntry`](/mojo/stdlib/collections/dict/DictEntry) objects.\n", + "Within the loop body, you can then access the `key` and `value` fields of the\n", + "entry." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sacramento, California\n", + "Honolulu, Hawaii\n", + "Salem, Oregon\n" + ] + } + ], + "source": [ + "for item in capitals.items():\n", + " print(item[].value + \", \" + item[].key)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Another type of iterable provided by the Mojo standard library is a _range_,\n", + "which is a sequence of integers generated by the\n", + "[`range()`](/mojo/stdlib/builtin/range/range) function. It differs from the\n", + "collection types shown above in that it's implemented as a\n", + "[generator](https://en.wikipedia.org/wiki/Generator_(computer_programming)),\n", + "producing each value as needed rather than materializing the entire sequence\n", + "in memory. Additionally, each value assigned to the loop index variable is\n", + "simply the `Int` value rather than a `Reference` to the value, so you should\n", + "not use the dereference operator on it within the loop. For example:" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0, 1, 2, 3, 4, " + ] + } + ], + "source": [ + "for i in range(5):\n", + " print(i, end=\", \")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### `for` loop control statements\n", + "\n", + "A `continue` statement skips execution of the rest of the code block and\n", + "resumes the loop with the next element of the collection." + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0, 1, 2, 4, " + ] + } + ], + "source": [ + "for i in range(5):\n", + " if i == 3:\n", + " continue\n", + " print(i, end=\", \")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A `break` statement terminates execution of the loop." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0, 1, 2, " + ] + } + ], + "source": [ + "for i in range(5):\n", + " if i == 3:\n", + " break\n", + " print(i, end=\", \")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optionally, a `for` loop can include an `else` clause. The body of the `else`\n", + "clause executes after iterating over all of the elements in a collection." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0, 1, 2, 3, 4, \n", + "Finished executing 'for' loop\n" + ] + } + ], + "source": [ + "for i in range(5):\n", + " print(i, end=\", \")\n", + "else:\n", + " print(\"\\nFinished executing 'for' loop\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `else` clause executes even if the collection is empty." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Finished executing 'for' loop\n" + ] + } + ], + "source": [ + "from collections import List\n", + "\n", + "empty = List[Int]()\n", + "for i in empty:\n", + " print(i[])\n", + "else:\n", + " print(\"Finished executing 'for' loop\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + ":::note\n", + "\n", + "The `else` clause does _not_ execute if a `break` or `return` statement\n", + "terminates the `for` loop.\n", + "\n", + ":::" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Found a dog\n" + ] + } + ], + "source": [ + "from collections import List\n", + "\n", + "animals = List[String](\"cat\", \"aardvark\", \"hippopotamus\", \"dog\")\n", + "for animal in animals:\n", + " if animal[] == \"dog\":\n", + " print(\"Found a dog\")\n", + " break\n", + "else:\n", + " print(\"No dog found\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Iterating over Python collections\n", + "\n", + "The Mojo `for` loop supports iterating over Python collection types. Each item\n", + "retrieved by the loop is a\n", + "[`PythonObject`](/mojo/stdlib/python/object/PythonObject) wrapper around\n", + "the Python object. Refer to the [Python types](/mojo/manual/python/types)\n", + "documentation for more information on manipulating Python objects from Mojo.\n", + "\n", + "The following is a simple example of iterating over a mixed-type Python list." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "42\n", + "cat\n", + "3.14159\n" + ] + } + ], + "source": [ + "from python import Python\n", + "\n", + "# Create a mixed-type Python list\n", + "py_list = Python.evaluate(\"[42, 'cat', 3.14159]\")\n", + "for py_obj in py_list: # Each element is of type \"PythonObject\"\n", + " print(py_obj)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + ":::note TODO\n", + "\n", + "Iterating over a Mojo collection currently assigns the loop index variable a\n", + "`Reference` to each element, which then requires you to use the dereference\n", + "operator within the loop body. In contrast, iterating over a Python collection\n", + "assigns a `PythonObject` wrapper for the element, which does _not_ require you\n", + "to use the dereference operator.\n", + "\n", + ":::\n", + "\n", + "\n", + "There are two techniques for iterating over a Python dictionary. The first is to\n", + "iterate directly using the dictionary, which produces a sequence of its keys." + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a 1\n", + "b 2.71828\n", + "c sushi\n" + ] + } + ], + "source": [ + "from python import Python\n", + "\n", + "# Create a mixed-type Python dictionary\n", + "py_dict = Python.evaluate(\"{'a': 1, 'b': 2.71828, 'c': 'sushi'}\")\n", + "for py_key in py_dict: # Each element is of type \"PythonObject\"\n", + " print(py_key, py_dict[py_key])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The second approach to iterating over a Python dictionary is to invoke its\n", + "`items()` method, which produces a sequence of 2-tuple objects.\n", + "Within the loop body, you can then access the key and value by index." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a 1\n", + "b 2.71828\n", + "c sushi\n" + ] + } + ], + "source": [ + "for py_tuple in py_dict.items(): # Each element is of type \"PythonObject\"\n", + " print(py_tuple[0], py_tuple[1])" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Mojo", + "language": "mojo", + "name": "mojo-jupyter-kernel" + }, + "language_info": { + "codemirror_mode": { + "name": "mojo" + }, + "file_extension": ".mojo", + "mimetype": "text/x-mojo", + "name": "mojo" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/mojoproject.toml b/mojoproject.toml new file mode 100644 index 0000000000..08cd4422c4 --- /dev/null +++ b/mojoproject.toml @@ -0,0 +1,12 @@ +[project] +authors = ["Manuel Saelices "] +channels = ["conda-forge", "https://conda.modular.com/max-nightly"] +description = "Add a short description here" +name = "mojo" +platforms = ["linux-64"] +version = "0.1.0" + +[tasks] + +[dependencies] +max = ">=24.6.0.dev2024092105,<25" diff --git a/report.csv b/report.csv new file mode 100644 index 0000000000..ee86309cf4 --- /dev/null +++ b/report.csv @@ -0,0 +1,11 @@ +version,n_wds,n_keys,the,sec +13638,1943,236,0.0029971970000000001 +13638,1943,236,0.0029650269999999999 +13638,1943,236,0.0029147410000000002 +13638,1943,236,0.002933831 +13638,1943,236,0.0028481700000000001 +13638,1943,236,0.0028025720000000001 +13638,1943,236,0.002834095 +13638,1943,236,0.002785886 +13638,1943,236,0.0027786009999999999 +13638,1943,236,0.0027201759999999999 diff --git a/report_after.csv b/report_after.csv new file mode 100644 index 0000000000..3150f41583 --- /dev/null +++ b/report_after.csv @@ -0,0 +1,11 @@ +version,n_wds,n_keys,the,sec +13638,1944,236,0.0038483929999999999 +13638,1944,236,0.003731285 +13638,1944,236,0.003709426 +13638,1944,236,0.0037753890000000001 +13638,1944,236,0.0038318750000000002 +13638,1944,236,0.0043440989999999997 +13638,1944,236,0.0039485559999999998 +13638,1944,236,0.0040425610000000001 +13638,1944,236,0.0040622460000000003 +13638,1944,236,0.0041538590000000002 diff --git a/report_before.csv b/report_before.csv new file mode 100644 index 0000000000..dd3e0fa952 --- /dev/null +++ b/report_before.csv @@ -0,0 +1,11 @@ +version,n_wds,n_keys,the,sec +13638,1944,236,0.0083167180000000007 +13638,1944,236,0.008287684 +13638,1944,236,0.0084045869999999998 +13638,1944,236,0.0083934049999999996 +13638,1944,236,0.0083934230000000006 +13638,1944,236,0.0084422609999999995 +13638,1944,236,0.0084124249999999994 +13638,1944,236,0.0084025450000000008 +13638,1944,236,0.0084028699999999998 +13638,1944,236,0.0083881839999999999 diff --git a/report_despues.csv b/report_despues.csv new file mode 100644 index 0000000000..6b9e3be661 --- /dev/null +++ b/report_despues.csv @@ -0,0 +1,11 @@ +version,n_wds,n_keys,the,sec +13638,1943,236,0.0061102220000000002 +13638,1943,236,0.0060913690000000001 +13638,1943,236,0.006364153 +13638,1943,236,0.0067304770000000003 +13638,1943,236,0.0067963140000000003 +13638,1943,236,0.0070630659999999998 +13638,1943,236,0.0070410789999999996 +13638,1943,236,0.0070120449999999997 +13638,1943,236,0.0069469570000000001 +13638,1943,236,0.0068023770000000001 diff --git a/report_py.csv b/report_py.csv new file mode 100644 index 0000000000..bffea86557 --- /dev/null +++ b/report_py.csv @@ -0,0 +1,11 @@ +version,n_wds,n_keys,the,sec +13634,1941,236,0.000789642333984375 +13634,1941,236,0.0006606578826904297 +13634,1941,236,0.0006120204925537109 +13634,1941,236,0.0006487369537353516 +13634,1941,236,0.0005767345428466797 +13634,1941,236,0.0005462169647216797 +13634,1941,236,0.00054931640625 +13634,1941,236,0.0005660057067871094 +13634,1941,236,0.0005388259887695312 +13634,1941,236,0.0005414485931396484 diff --git a/stdlib/snaker.py b/stdlib/snaker.py new file mode 100644 index 0000000000..cc8e10fa61 --- /dev/null +++ b/stdlib/snaker.py @@ -0,0 +1,33 @@ +import re +import os + +def camel_to_snake(name): + # Convert camelCase to snake_case + s1 = re.sub('(.)([A-Z][a-z]+)', r'\1_\2', name) + return re.sub('([a-z0-9])([A-Z])', r'\1_\2', s1).lower() + +def convert_file(file_path): + with open(file_path, 'r') as file: + content = file.read() + + # Regex to match camelCase variables outside of string literals + camel_case_pattern = re.compile(r'\b([a-z]+(?:[A-Z][a-z]*)+)\b(?=(?:[^\'"]*\'[^\'"]*\')*[^\'"]*$)') + + # Replace each camelCase variable with snake_case + def replace(match): + camel_case = match.group(1) + return camel_to_snake(camel_case) + + content = camel_case_pattern.sub(replace, content) + + with open(file_path, 'w') as file: + file.write(content) + +def convert_directory(directory_path): + for root, _, files in os.walk(directory_path): + for file in files: + if file.endswith('.mojo'): + convert_file(os.path.join(root, file)) + +if __name__ == "__main__": + convert_directory(".") \ No newline at end of file diff --git a/stdlib/src/builtin/int.mojo b/stdlib/src/builtin/int.mojo index 960ac5e00b..349b880736 100644 --- a/stdlib/src/builtin/int.mojo +++ b/stdlib/src/builtin/int.mojo @@ -17,6 +17,7 @@ These are Mojo built-ins, so you don't need to import them. from collections import KeyElement +from bit import byte_swap from math import Ceilable, CeilDivable, Floorable, Truncable from hashlib.hash import _hash_simd from hashlib._hasher import _HashableWithHasher, _Hasher @@ -29,10 +30,11 @@ from python import Python, PythonObject from python._cpython import Py_ssize_t from memory import UnsafePointer -from utils import Writable, Writer +from utils import Span, Writable, Writer from utils._visualizers import lldb_formatter_wrapping_type from utils._select import _select_register_value as select from sys import is_nvidia_gpu, bitwidthof +from sys.info import is_big_endian # ===----------------------------------------------------------------------=== # # Indexer @@ -1194,6 +1196,64 @@ struct Int( writer.write(self) + @staticmethod + fn from_bytes[ + type: DType, big_endian: Bool = False + ](bytes: Span[Byte]) raises -> Self: + """Converts a byte array to an integer. + + Args: + bytes: The byte array to convert. + + Parameters: + type: The type of the integer. + big_endian: Whether the byte array is big-endian. + + + Returns: + The integer value. + """ + if type.sizeof() != len(bytes): + raise Error("Byte array size does not match the integer size.") + var ptr: UnsafePointer[Byte] = UnsafePointer.address_of(bytes[0]) + var type_ptr: UnsafePointer[Scalar[type]] = ptr.bitcast[Scalar[type]]() + var value = type_ptr[] + + @parameter + if is_big_endian() and not big_endian: + value = byte_swap(value) + elif not is_big_endian() and big_endian: + value = byte_swap(value) + return int(value) + + fn as_bytes[type: DType, big_endian: Bool = False](self) -> List[Byte]: + """Convert the integer to a byte array. + + Parameters: + type: The type of the integer. + big_endian: Whether the byte array should be big-endian. + + Returns: + The byte array. + """ + alias type_len = type.sizeof() + var value = Scalar[type](self) + + @parameter + if is_big_endian() and not big_endian: + value = byte_swap(value) + elif not is_big_endian() and big_endian: + value = byte_swap(value) + + var ptr: UnsafePointer[Scalar[type]] = UnsafePointer.address_of(value) + var byte_ptr: UnsafePointer[Byte] = ptr.bitcast[Byte]() + var list = List[Byte](capacity=type_len) + + @parameter + for i in range(type_len): + list.append(byte_ptr[i]) + return list^ + @always_inline("nodebug") fn __mlir_index__(self) -> __mlir_type.index: """Convert to index. diff --git a/stdlib/test/builtin/test_int.mojo b/stdlib/test/builtin/test_int.mojo index 8d898798da..ec48ff89dd 100644 --- a/stdlib/test/builtin/test_int.mojo +++ b/stdlib/test/builtin/test_int.mojo @@ -19,6 +19,8 @@ from testing import assert_equal, assert_true, assert_false, assert_raises from python import PythonObject from memory import UnsafePointer +alias Bytes = List[Byte] + def test_properties(): assert_equal(Int.MAX, (1 << bitwidthof[DType.index]() - 1) - 1) @@ -246,6 +248,56 @@ def test_conversion_from_python(): assert_equal(Int.try_from_python(PythonObject(-1)), -1) +def test_from_bytes(): + assert_equal(Int.from_bytes[DType.int16, big_endian=True](Bytes(0, 16)), 16) + assert_equal( + Int.from_bytes[DType.int16, big_endian=False](Bytes(0, 16)), 4096 + ) + assert_equal( + Int.from_bytes[DType.int16, big_endian=True](Bytes(252, 0)), -1024 + ) + assert_equal( + Int.from_bytes[DType.uint16, big_endian=True](Bytes(252, 0)), 64512 + ) + assert_equal( + Int.from_bytes[DType.int16, big_endian=False](Bytes(252, 0)), 252 + ) + assert_equal( + Int.from_bytes[DType.int32, big_endian=True](Bytes(0, 0, 0, 1)), 1 + ) + assert_equal( + Int.from_bytes[DType.int32, big_endian=False](Bytes(0, 0, 0, 1)), + 16777216, + ) + assert_equal( + Int.from_bytes[DType.int32, big_endian=True](Bytes(1, 0, 0, 0)), + 16777216, + ) + assert_equal( + Int.from_bytes[DType.int32, big_endian=True](Bytes(1, 0, 0, 1)), + 16777217, + ) + assert_equal( + Int.from_bytes[DType.int32, big_endian=False](Bytes(1, 0, 0, 1)), + 16777217, + ) + assert_equal( + Int.from_bytes[DType.int32, big_endian=True](Bytes(255, 0, 0, 0)), + -16777216, + ) + for x_ref in List[Int](10, 100, -12, 0, 1, -1, 1000, -1000): + x = x_ref[] + + @parameter + for b in range(2): + assert_equal( + Int.from_bytes[DType.int16, big_endian=b]( + Int(x).as_bytes[DType.int16, big_endian=b]() + ), + x, + ) + + def main(): test_properties() test_add() @@ -269,3 +321,4 @@ def main(): test_int_uint() test_float_conversion() test_conversion_from_python() + test_from_bytes() diff --git a/t b/t new file mode 100755 index 0000000000..f5ea3dea1f Binary files /dev/null and b/t differ diff --git a/t.mojo b/t.mojo new file mode 100644 index 0000000000..f5c22d47f1 --- /dev/null +++ b/t.mojo @@ -0,0 +1,75 @@ +from memory import memcpy,UnsafePointer +from sys import sizeof + +alias Bytes = List[Byte] + +fn pointer_bitcast[ + To: AnyType +](ptr: Pointer) -> Pointer[To, ptr.origin, ptr.address_space, *_, **_] as out: + return __type_of(out)( + _mlir_value=__mlir_op.`lit.ref.from_pointer`[ + _type = __type_of(out)._mlir_type + ]( + UnsafePointer(__mlir_op.`lit.ref.to_pointer`(ptr._value)) + .bitcast[To]() + .address + ) + ) + +@value +# @register_passable("trivial") +struct MyInt: + var value: Int + + fn __del__(owned self): + print('deleting') + + +fn as_bytes(value: Int) raises -> List[Byte]: + """Convert the integer to a byte array. + + Returns: + The byte array. + """ + var ptr = Pointer.address_of(value.value) + var byte_ptr = pointer_bitcast[Byte](ptr) + var len = sizeof[__mlir_type.index]() + # var res = List(ptr=UnsafePointer.address_of(byte_ptr[]), length=len, capacity=len) + var res = List[Byte](capacity=len) + for i in range(len): + item = UnsafePointer.address_of(byte_ptr[]).load(i) + print('i={}, b={}'.format(i, int(item))) + res.append(UnsafePointer.address_of(byte_ptr[]).load(i)) + return res + + +fn as_bytes_unsafe(value: Int) raises -> List[Byte]: + """Convert the integer to a byte array. + + Returns: + The byte array. + """ + + # @parameter + # if is_big_endian() and not big_endian: + # value = byte_swap(value) + # elif not is_big_endian() and big_endian: + # value = byte_swap(value) + + var ptr = UnsafePointer.address_of(value.value) + var len = sizeof[MyInt]() + var byte_ptr = ptr.bitcast[Byte]() + var dest_ptr = UnsafePointer[Byte].alloc(len) + memcpy(dest=dest_ptr, src=byte_ptr, count=len) + res = List(ptr=dest_ptr, length=len, capacity=len) + for i in range(len): + print('i={}, b={}'.format(i, int(res[i]))) + return res + +fn main() raises: + var x = Int(1_000_000_000) + var bytes = as_bytes(x) + print('bytes={}'.format(String(bytes))) + print('UNSAFE') + var bytes_unsafe = as_bytes_unsafe(x) + print('bytes_unsafe={}'.format(String(bytes_unsafe)))