All right, welcome to the Microsoft 26th of August developer sync meeting. So last time we went over our sprint planning for this next two weeks, and today we're just going to go through and check in on progress and anything that people might be getting hung up on. So I think we'll just go through round table style here, and Cand is in the middle, at the top right there. So go ahead, Ken. All right, so it's been an interesting week, a couple of things. I read through your user stories, wiki page and commented, made some comments on it. I understand where you're coming from, I believe, which is you're trying to touch upon all of the things the data model should be able to speak to. I took it that way. At first I was confused and I was taking it like we want all this functionality and I realized you're probably speaking to the data model more than anything on that page. So I made some comments. I finished the auto train process. I am ready to integrate it with the new schema when it is ready. To that end I threw up a couple of wiki pages describing that process in depth and another one. So the one is called continuous model training, and it tells you what servers are running, what code and all of that good stuff, and why the limitations or the implementation is implemented the way it is or tried to justify it. I created another wiki page which describes some of the factors that affect the model's performance, just a placeholder. I'd like to get deeper on that at some point.  I've hit some interesting problems with hyperparameters and overtraining, so I'm researching that. In so doing it came to my attention and I actually commented on one of the tickets that you and Chris had commented on. I'm one of the wiki pages or I think it was a ticket or a wiki page, but the subject was around the concept of a model or the model of a model. So the continuous model training page now has a section called model object, which describes this artist's interpretation of the representation of a model. To that end, the automated process, when it's done it runs some tests. What I'm thinking of doing is creating a model database and I'll put the schema up. And after every new model is created and the tests are run, making entries in the model database so that in the future, somebody that's doing hyperparameter tuning can select them out in an organized manner and possibly start looking at clusters because I really do believe it's that kind of a problem, not a linear increase the RCUs and it gets better, add more epics and it gets better kind of thing. It's a relationship between the hyperparameters and the dataset size and possibly dataset quality. And so the only way you're going to get to the answers is to have the data and so I'm just thinking it would be helpful that every time we train the new model, we simply made an entry in the table, you know, broke out, you know, the hyperparameters as well so that you can select and get your datasets and then somebody better than me can come along and stand on my shoulders and use that data to do something with it. So that and I'm working on that a little bit and then I had an idea I want to run by everybody. I created a ticket, but I didn't sign it or put it anywhere because it's one to see if you thought it was worth following up on and it goes speaks to what you were actually saying to a certain extent a little bit, Michael, on that one page. But basically, what if we had a skill that you could say improve recognizer and it would play back the last 10 or 20 samples that it had captured, not only had it sent them up to the cloud, but it saved them locally. And it would say, you know, maybe four or five at a time, just very briefly. Was this a wake word? Was this a wake word? Was this a wake word? And then upload the results to the tag database. So now the user could not only help improve the quality, but much more importantly, after enough of those runs, I could then fire off a task that since all of those now tagged samples are in the database, select them out just his. Take the existing community model that he has running in his local server and do an incremental training session using his new sample tag data. Because when you do incremental training, which is actually the bane of machine language processing or machine learning, but it's great for this example, the newer samples get prioritized kind of higher by default in these algorithms. They fight to make that not happen, but drop out and all sorts of things. So by incrementally training on your last 20 or 30 samples you tagged, that model will specifically continue, even though it's a community model, it will start getting better for you personally or the people that are using that device. So I thought that might be a one way around that problem space as well. So I threw a ticket out there as well to see if I wanted to get any traction. And that's it. I'm getting ready to publish the model schema and start populating that model database, which is why I asked you, Chris, because I'll make it a separate model database in the Maria DB. And then later you can just bring it on over and it'll be in your Selene database as well. And then I'm not blocked, right? So anyway, that's what I was working on. Oh, and I've been trying to help keep up with the forums. I suspect, this is really weird, I suspect the latest release broke for size. And I know everybody's like, but you really can't test for that, because we do continuous integration and deployment in the cloud, if I'm not mistaken. And all of the VoIP comp stuff I did would have to actually run on a head server, not a headless server, because you can't do real loop feedback through a microphone speaker system when you have a headless server that doesn't support a microphone and a speaker. So there's no way to catch that. And I suspect what happened, and I'll tell you, it's a little complicated. I actually have an email out to Ake on this. When Ake was breaking me in, we discussed the concept of the next release. And he had mentioned that he had to work around in the new runner for problems that existed. And what I'm suspecting is happening is the runner and the engine are O2. In other words, the runner is O3, it's running the O2 engine. It's because that's O3, it thinks it's O3 and it's pulling the models down from an O3 model repository. And we know O3 models are not backward compatible with an O2 engine. So I have an email into Ake to say, hey, do you think this might be happening? And I'll follow up on it as well. But I've been trying to keep up with the people in the forums because there's been some matter most informed chatter about it. And so I'm working on looking at that as well. And that's it for me. OK, thanks. Yeah, that's a good, really good flag. I mean, one thing to note is that we've planned three phases in the BoiComp continuous integration system. And we've only implemented phase one at this point. The next phases will integrate just what you're talking about, incorporating the actual text-to-speech, speech-to-text and text-to-speech issues. And then ultimately, a hardware infrastructure as well, so that we can test it on the actual running hardware. But none of that's actually implemented right now. So that's a known problem. Yeah, I was just trying to give an excuse of why this wasn't caught. Yeah, no. And that's a good point. It should have been caught anyway, because we're supposed to test these releases on actual hardware before we send them out. I don't know about that. That's something that we'll, I'll learn more about in the future, I'm sure, by awesome. OK. So but you're, the status right now is that you've logged to the, you've created a log for a problem that people are reporting. Good to take care of that. Well, what I did is I saw that the chatter was heating up. You always see people complaining about custom wake words not working, right? That's common. And that's a really involved solution, so I try to not get into that hornet's nest. But what I have been seeing more recently was people saying it just, precise doesn't seem to be working. And I'm positive that my hardware is good. And I then started seeing more of this and thought back to what Ake had told me and said, well, gee, I could see where, if it thinks it's O3 and it's running an O3 engine, it will pull an O3 model. Or maybe it's running O2 because he had to do work around, I mean. But the wrapper says it's O3. So it's running an O2 engine, but it sees the wrapper as O3. So it's pulling it down an O3 model. And we know that's not going to work, is my point. So are they reporting what hardware they're running on? Are they running on Mark 1's or on PyCrafts or what? They're running on custom regular laptop running in Ubuntu 20 is the last one I saw. And it was something to do with the ARM architecture, that the O3 image wasn't ready for ARM during the O2 release or something. I mean, I'm not positive on all of that. And that's what I'm chasing down as I'm asking for more input. Give me the engine, give me the repository hash that you believe it's pulling from, that kind of stuff. And I'll step through it and work with them. And like I said, I have an email into Ake saying, hey, I suspect this could this be so. So he'll probably see that tonight. OK, we'll make sure to write up a ticket for that and try to figure out what version of the software and hardware they're using on all that. Yeah, I guess I was only apprehensive about writing up a ticket because I wasn't sure it was a real problem yet. But I'll write it up because worst case, it's not. And we can close it out. Well, exactly. Yeah, you're spending time on it. It's good to know. Maybe we'll learn something here. It's unfortunate that Giz is out right now. That's OK. Actually, I can hold up the board a little bit with one. OK, you mentioned a couple other things that I wanted to touch on there, but they've slipped my mind. So I'll just let it go for now. We'll go back and look at the notes. So how about Chris there? Yeah, so I spent a good part of Monday in the start of my Tuesday reorganizing JIRA a bit. That's just time consuming. So I think it's all it's in a pretty good place right now. And I moved on then to re-implementing the schema as we defined it in our meetings last week. So the DDL is written. And I wrote an SQL script that will take our current database. So I wrote the code so you can rebootstrap it, basically, some scratch if you want to. And I also wrote an SQL script for the test and production databases that will update them with the new schema stuff. So right now I am working on the code that uses the schema. My first step is to update any code that was broken by the new schema. And then I'm going to go in and add the stuff we need for the new collection mechanisms. Again, a lot of this code is written. I'm just looking at the code I've written right now and seeing how it needs to change for the schema as it changed last week. So that's where I am. I will probably be spending the rest of my week doing. No blockers. Everything's cruising along. OK, good. Derek? Yeah, so I don't really have any big blockers. Just continue to work. I was finishing up Kent's device. I'm going to get that set tomorrow. And I've also got the enclosure for the last thing I needed to do, forcing the enclosure to Kevin, was test the audio chamber. It was slightly different. I did that yesterday and it sounds pretty good. And I think I'm actually going to tweak the work a little bit. But it's plenty fine. So we'll go with that for now. And I've updated that design, that laser cut design that I'm seeing at Kevin, to be assembled with screws, instead of glue, I've got this kind of T-slot screw, a sibling, with the idea there that I could be easily shared. But I want to get it super easy. Actually, it could be something that we consider making available to those backers, or to anyone really, that just got the boards, because if you have a cheap and easy housing, it's not good. So let's see. Yeah, so then the other two big projects related that are just getting a version of that same enclosure that is an modified top to use the re-speaker microwave, so that we have an apples to apples re-speaker versus the SJ201. And then I'll get back onto the actual plastics design. There is one thing that I ran into yesterday while trying to test Ken's device that was troubling me. I did finally get past it. And that was this audio playback bug. I sent a clip to Josh and Michael. I consider it's you too, the rest of you guys. This is a known bug. We've known about it, but it just seems to be popping up so frequently now, not sure why versus a couple of weeks ago. But the problem with it is that, for example, I booted the device that I was testing for Ken with a fresh image four or five times I had to reboot it before the audio stuff actually worked. So as you can guess, that's kind of frustrating for me on the hardware side, because at what point I would say, Hey, Minecraft. OK, I know it's probably going to work, but is this hardware or is this software? So that one particularly is becoming troublesome for me. And like I said, Chris and I have talked about this, but it used to really not happen that much for some reason. Yeah, I mean the the mark to off-the-shelf unit that I've got here is the audio is fairly unreliable. And it has to do with boot up and stuff. And actually, I hear clicks and pops when I turn it on. So I think there might be something about a loose connection or something like that. I might have to open it up and take a look. Well, the clicks and pops, that would be coincidental that both of them had a loose connection. It's probably bring up timing issues. But presumably I will have experience. I'll be fortunate enough to experience this pain when I receive my device so I can look into it as well. Don't fix it. Yes, well, I think Gez was also looking at possibly something that, you know, in startup check, you know, a project he was looking on. Yeah, Ken's probably right, actually. We there are some known issues there. But you mentioned at the beginning of this, did you say something about the board Kevin's working on? You were saying this was? No, no. So I may have misspoken. OK. It seems like you were something about the audio that you thought was going to interfere with us doing the side-by-side comparison of the new versus the old design. Well, no, this is just being that it just becomes like, well, I mean, I guess I could see it becoming difficult for Kevin as well if he's seeing the same type of thing. He's testing new board and it's OK. This is the board issue or this known audio bug. It just becomes, you know, if you have to reboot it in so many times, you know, you just keep going to 10 or what point do you give up? And so usually in the past, I don't think I'd ever encounter where I had to reboot it four times. That's a good answer. Yesterday was the first time. So on the audio thing, one of the things that I wanted to kind of insert there was the big difference between this and our previous Mark II prototypes. There's a couple of them. One is we're running on an RPI-4. Another is we're running Buster instead of Jesse. And the third is that we're based on a high-croft image instead of based on a Mark I image. So those are the three major things that are different to me between this prototype and the prototype we had prior to this that did not have this issue. So I'm wondering if one of those three things has something into the drivers that the Raspberry Pi 4 or the drivers that the pie-croft supplies for the speaker array. I think so that some of that may be a good starting point as far as things to look into that might be causing the issue. Chris, was the pie-croft image based on Jesse or Buster? Buster. And this new image is also based on Buster then. Yeah. Yeah, Jesse image was for the old Mark II prototype we had. It was Pi 3 based. Well, what I was getting at is so we don't seem to have this problem with the Raspberry Pi 3 is running it. So that would probably take the operating system out of the equation. Now, it's not drivers but the OS, right? Look, if I'm wrong, the unit on my desk is the Pi 3. Yeah, but my point is we already run well. We know we run well on Buster. So we're not saying it's a Buster issue, right? We know we run well on Jesse. Well, but I thought the pie-croft was based on Buster. The newest pie-croft image is, but I don't know. Old pie-croft image. The newest pie-croft image is based on the old pie-croft image, correct? We shouldn't. We can't mix pie-croft and the Mark II image. The pie-croft is the basis of the Mark II image. Yeah. And the most recent pie-croft image is Buster-based. And I don't know enough to know if there's issues with it, like if other people are having issues with it, regarding audio or not. Well, let me ask a question this way. I just saw a video today that was actually excellent. You were right, Michael, that showed how to get pie-croft image running on your Pi 3, correct? Chris, right? Is that the one that Krista there shared on that list? Yeah, yeah. Is that image running Jesse or Buster? Depends on what's once you download it. It's probably running Buster. All right. OK, so let's turn this into a ticket, and if it's not already, and get it assigned to somebody to figure it out. Well, there was a ticket at one point, but I guess it should probably go under Mark II now in the organization of things. Since that's quite small. Yeah, it's definitely occurring on the Mark II. So yeah, if it's growing in other places. That's not the only place that's happening, right? Well, I don't know if it's occurring other places, whether it's on. Oh, yeah. Well, I haven't done yet a setup on Mycroft Lab. I suppose I'll have to retire to my garage and have a Raspberry Pi 3, and a Mark I, and a Mark II, and a laptop, and something running. Speaking of all, do we have any Mark I's that Ken can have? Oh, yeah, that's a good point. I should pack one of those up to try to send it with you tomorrow. OK, I can do that. Yeah, I don't want to use it. I've got a couple on the shelf behind me up here. If you guys need one, I got it. Derek's already sending my Mark II, so just send it together. Yeah, I've got one, or I've got a few of them. Yeah, Derek, go ahead and assign that audio system instability problem ticket to me as well. OK. Yeah, I mean, I'm going to be getting the hardware and bringing it up and experiencing the pain, and I'm going to fix it anyway. There you go. I will close the ticket. That's exactly why all developers need to have these on their desks. Right, right. All right, so excellent. So Derek, have you been in touch with Kevin today about the hardware and the status there? I haven't. I've just been kind of waiting for him to, he's been pretty good about sending updates, but nothing today so far. Yeah, we had some pretty exciting updates on Monday. But so the bad news is that I did have a chat with him this afternoon, and he seems to have hit a snag. Like, he got the entire board up and running except for the LEDs on the back, and that was just because there was a lot of stuff to install. So everything was working. But by the time he got the LEDs on board and was testing that last system, somehow the short had reappeared between one volt and ground. And so he's trying to figure out what's going on there. So he had gotten the XMOS chip up and running, and it was working fine. He actually recorded some audio samples and sent them over to us, and that was pretty cool. So we know all the subsystems work, but he's just having some problem with the manual soldering step. Something's going wrong there. So he's going to be working on that this afternoon. Hopefully he'll be able to resolve it. But at least we know that, in theory, all the parts work. It's just a matter of getting the assembly down. I got a generic question on the hardware. The mic array, is that one of the things that's controlled by the XMOS chip? Yeah, that sits into whole purpose. OK. And can you configure it to just use a single mic out of the entire array? Yeah, there's a lot that you can configure about it. You can turn off all the subcomponents of the echo cancellation. You can fine tune the parameters and the delay between the input and the output and all this kind of stuff. Do we have the, does anybody know the part number on the XMOS chip so I can dig up the specs? Or have you put the manuals on the chip to the website somewhere? Yeah, if you go to the GitHub repo for the Mark II hardware, everything's there. Oh, very cool. Yeah, no, the only reason I asked is I didn't know what a mic array was. And I started researching a little. And lo and behold, a lot of the results came back.  So I'm like, oh goodness, I hope I can turn them off. Why ask? Well, it is kind of misleading to a certain degree. Because a lot of people in the community, they talk about, oh, have you used this mic array?  But it's just, and a lot of those are just for microphones that are just connected to the Pi with no DSP. So the XMOS can, in certain firmware versions, the firmware version we are using for the re-speaker combines all the input of the microphone for you. And just so the Pi only really sees it as one microphone. Because all the processing's already happened. So we're not doing that. We're not having to do that on the Pi. Whereas some of the other options, you have to do that in software on the Pi. You have to use some other software-based DSP. So we will want to use a firmware. I would assume you'll want to use the firmware that combines, or it does all the processing for us and gives us one audio stream, a clean-down, essentially clean, nice audio. That's kind of the problem. And the firmware documentation is on the GitHub repository as well? You might have to link it over to the XMOS set. What's that? XMOS has some very extensive documentation on their website, so it's probably a link there. OK, good. And so it's kind of a misnomer, just call it a microwave. It's really a microwave plus a DSP, plus a dedicated hardware DSP. Right, it's running some specific echo cancellation far fewer algorithms. So hopefully we'll get some news on that, hopefully today or tomorrow. I don't have any other updates right now. Is there anything else people want to talk about? Things seem to be moving along. So, all right then, I guess we'll call it a day. Yeah, just one thing, Michael, for your edification. Remember, I talked about a skill where you could say, improve recognizer accuracy and go through the whole process. In case you were wondering, it wasn't like I was planning on training on your machine. I was planning on simply sending a notification to the back end. As part of what I just finished, there's now a data pathway for requesting the training server to train. And so right now that is very specific for responding off a nightly trigger, but could be expanded to allow that to basically create the models for the device in the cloud and then send them back down if that makes sense. Right. Yeah, I think there's even a ticket for something like that in a system. Yeah, so by building this, just with a little bit of enhancement, I can expand that process flow to handle things like that, where we could allow people to train in our cloud, if you will, and then download the model. Yeah, so anyway, that was where I was going. I wasn't planning on doing it locally. So, just to bring up something sort of tangentially related to that, Derek and I had some pretty good conversations around how to close the loop on the intent processing side of this back in last December. So, we've got some ideas about that, that we can talk about once we get through the precise side of things. We're talking about a PDACIUS and that whole yeah, branch, that spaghetti junction code. Yeah, the idea of basically letting the user interactively correct the system and recording those corrections and learning from those mistakes. Yeah. So, that's okay. Well, that's in your own network, I don't believe it's based on TensorFlow, it's an interesting algorithm, it's an interesting tree search, but okay. And it could just have nothing to do with retraining, it just might be about collecting more data. But that's a topic for another. Yes, sir. All right. Yeah, okay. I was gonna bring up the other idea too around collecting, well, I can do it really briefly. We're gonna have the action button on the new device, right? And so we've talked about using that action button to possibly collect wake word mist utterances or mist, someone said the wake word doesn't get caught, right? So you might hit that action button and we could come up with something that says like, oh, did I not hear you say, hey, Minecraft, would you be all right with me uploading the last minute worth of audio or something to try and catch some of those mist wake words? Yeah, we could do that. Or that could be that action button could trigger the skill I'm thinking about, right? And which is the same thing, which would play back like the last five or 10 captured wake words and say, was this really the wake word? Was this really a wake word? Was this really a wake word? And then boom, send them up. Yeah, so that button could trigger that skill, sure. Yeah, yeah. So I think there's a lot of ideas we should think about for having, using that button that we really just haven't had on the market yet. Yeah, I think it's gonna be a thing that'll be something we wanna play around with and just figure out what is the real, what's a good user experience for that stuff. Right, yeah. Yeah, because it's gonna be better to have them help with that process manually than to try to put a bunch of code in a already tight loop that's listening and try to figure out if it was really a wake word or a mist wake word. That's not gonna happen there. I think the comment I made on your user stories was along the same thing, which was, no, I don't think it should send three samples. I think it should send one sample with two time stamps, right? Right, so, okay. Yeah. Well then. Another thing I think we're all making above the same thing. Yeah, about JIRA, I did, I don't know, you might have seen this, but you may not have the ID for the core project, no longer MC, it's core, C-O-R-E. And the ID for the Minecraft skills project is no longer NS, it's skill, S-K-I-L. So hopefully that will help some of the confusion as far as which projects, which goes where in the, of just the two letter acronym being used. Yeah, I saw you renamed the hardware to MK2 and MK1 as well, so that's good. Yeah. Always good to have TLS. Three letter acronym, recursive. All right, now I'm gonna stop it, we're done now. Talk to you all on Friday. All right, talk to you on Friday, have a good day. See you guys.


project and we wanted to show you guys some of the stuff we've done with ST products. This is a board that I've designed. This is the battery monitoring system for the D-13 entry in the World Solar Car Challenge. This board is based around the STM32 at 407 and we're very happy with the product that we've been able to make using ST processors. All of the boards on our car use ST processors and we're able to talk between the boards with our CAN bus and get all the data from the contacts with the wifi and we're very lucky to have these boards and processors on them because they really let us get the most out of our car and build reliable electronics.


You need a financial advisor with the freedom to focus on your specific needs. Whatever your goals, Reid Potter can create a game plan tailored to you. Call Reid at 4-3-2-0-7-7-7 at Pikeville, Kentucky to learn more. Mountain Motor Complex, formerly known as Mountain Motor Speedway, is under new management following the July flooding. The complex will feature not only a dirt track, but a new motocross course and a drag strip for the 2023 racing season. Me, my background is I've had a facility in South Carolina. Like I said, I'm a motocross guy. I had a 300-acre facility in South Carolina that really boomed, it was called Motivated. And the land got sold out from under me, so when I had to move, we went to Greenville and tried it again, just didn't work out.  And after the flood, I believe somebody just said they didn't want to fool it no more, so they left. So I said, okay, there's an opportunity. So in the middle of the track, you can obviously see we got jumps in there, so we got the dirt bikes in the middle of the track. So we are trying that, that's a new thing we're doing. We have completely resurfaced the car track, tried to make it a little bit better, a little more racing, take some of the old well-known bumps out of it. So we are also, we are doing the drag strip as well. We also have a 330-foot drag strip. And if I'm not mistaken, they say it's the sketchiest drag strip in the country. So I mean, that's a good, that's a plus, you know what I mean? Tom Motor Complex originally opened in 1968, and is believed to be the oldest operational dirt track in Kentucky. It's very important. For one, it brings in tourism, which brings in money for the local economy. But it gives people here something to do. And this track has, like since 1968, it's been here. And families, like kids have grown up here, and they brought their kids, and then their kids has brought theirs, and it's a family event. It's in their blood. And it's an important thing to be able to offer them something that they love. Because you can keep them home, you can keep your money home instead of sending it out to another county or another state. Adams hopes to improve seating, concessions, and add more events as the season progresses. We want to be the premier facility. We are working on it. We are working on a, we're not working with a whole lot of money. We are working with a lot of our gut and a lot of good friends. And we have a lot of good friends that have actually helped us out. To me, it's a different standard. I want to live up to, if not better than what the previous people have done. And to do that, we're going to have to make a few changes. So, and we feel like we're making those changes. We are far from done. We are definitely trying to make it better seating. And what it does to me, this is home to me. You know what I mean? I was in South Carolina. I've done a lot of other stuff too. But this is home. So this means more to me as a spiritual, not just that, just like this is my home. And I feel like I have to live to a different standard here. People are going to hold me to a different standard. So I'm going to try to keep this track at a higher standard than it's ever been before. For more information and to see upcoming events, go to Mountain Motor Complex on Facebook. Reporting for Mountain Top News, I'm Brianna Robinson.


Everybody for us to rip in 21 22 noir basketball hobby 4 box case number 38 It is a tiered random team style break There is a link for these results in chat. You can always find them at latent sports cards comm on the results quick link Searching for the results on the search bar. It's also pretty easy to Either way, they're always available on the website guys. Let's get started. Good luck. Let's see like a what-of-one or something here What's going on dogs being the warheads to see I'm doing maybe my favorite basketball products areas Some Victor. What's up, man? Just wake up All these rap scallions in my my twitch chat right now. All right base parallels for the Bulls Lonzo ball here 56 Blazer CJ McCollum 29 out of 99 Nick's rookie Quentin Grimes 35 of 35 dish night patch card Lakers LeBron James one of 25 That is an awesome three-color patch braided with the Lakers there Game used vet patch there LeBron James. Let's see if I sound anything like this LeBron James Nothing like it. No good, man. Bronzine Dish night patch card Jimmy Butler for the heat now seven at 25. I mean the war prices have gone up I think people are starting to come around on it like outside of like NC flawless RPA This might be one of the sought-after ones Three-color patch card. We've got a lot of nice vet three-color patch cards in this box That is a Devin Booker 14 at 25 for Phoenix Rockets shadow signatures Jay Sean Tate numbered 84 out of 99 Bulls Steve Kerr auto 49 of 99 not much RPA noir Grizzlies Zaire Williams 26 of 99 nice hit Grizzlies Pretty sure noir is all on cart Trying to think if there if I've ever I think so. Yeah, I think so RPA noir bulls now. I owe do soon move 72 of 99 that's Toke's boy right there It's Joel M with the bulls and the Grizzlies was Dan M. Nice RPAs for you both Nice I owe both of those RPAs mad nice hits Good box there with those nice game warrants that patches as well LeBron butler and Booker We should get a basketball hoop shop I'd show up like an hour early every day Just me just be playing I'd be like so I'm at the break and just being sweaty dude It's just I'd have to bring a change of clothes like bring my gym bag to work Quentin Grimes rookie Knicks 66 to 99. That's funny though. I don't have a gym bag. I don't go to the gym Nets gold rookie Darren sharp 2 of 10 and Sixers Tyrese maxi 29 of 99 one of the reasons for redemptions is a lot of the cards you're redeeming are gonna be on card So a lot of times you'll see Guys have sticker autos live but on card not Multiple reasons for that though certain companies do better at limiting redemptions Patch card Dirk Novitsky Mavericks 8 of 25 nice Dirk Rookie jumbo jersey for the Pacers Isaiah Jackson to 99 Hawks rookie jersey card Jalen Johnson 56 of 99 Bucks Jordan Noora auto 63 of 99 Raining Knights T Wolves Christian Latiner auto 61 of 99 Christian Latiner It's good. Yeah, we got a bunch of those on disney plus now. Yeah Got shadow signatures redemption Rookie Keon Johnson or snapshots. Sorry not shadow snapshot Keon Johnson. I think he's still a clipper in in this product. Let me check here It's a big dive followed you on twitch. Let's see Noir basketball Believe he's I know he's a blazer, but I'm pretty sure he's still a clipper in this Keon Johnson is clippers In noir clippers on the nice snapshot signatures there Keon Johnson clippers And debut silver screen debut rookie auto warriors, Jonathan Kominga 4 out of 49 Nice hit dubs big card Giovanni congrats on that one. I love this design Look at that one mad for you, bud I wonder if like upper deck has redemptions like that still like if they still have the cards I'd be curious to see I mean, what else they're gonna do with them, right base parallels hawks trey young 87 and 99 Desmond bane 3 out of 35 grizzlies And raptors og on a nobie 66 of 99 Kings rookie new wave jersey a patch card davion mitchell nine of 25 Dish night jersey card blazers cgm a column that is 27 of 75 patch card sixers ben Simmons 21 of 25 Portland auto robert covington 14 of 49 on the showtime auto This from last year's noir Portland robert covington RPA noir blazers greg brown the third 61 of 99 nice back-to-back hits for the blazers That's a nice one there spotlight signatures histons ben wallace nine of 99 Sick hit pistons Raiden k and reigning knights Atlanta hawks trey young auto seven of 10 boom John m Trey wait trey ice ice trey trey way every nicks fans favorite player Trey young reigning knights sick hit Atlanta Last box magic rookie Jalen Suggs 15 of 99 Pistons the deep bay four of five And pacers de monta sabonis 91 of 99 Magic rookie jersey cardist franz Wagner. That's 83 of 99 with a pinched drive down it New wave rookie jersey for okc erin wiggins 64 of 99 jumbo material blazers yusuf nerkic That is a 78 of 99 on that jersey card Hall of Fame insert auto going to the Sixers is george mcginnis non-numbered for the Sixers insert auto Let's turn around this weird Rockets rp noir josh christoper 66 or no, sorry 83 of 99 that's 66 of backwards 38 83 of 99 spotlight signatures mavericks christaps porzingis first one stamped one of 99 And on the back Rookie auto love the portrait design on these like the profile design Cade Cunningham 26 of 49 Brayden with the pistons What a hit Beautiful Cade These cards are sick only downside of the black The all black is that you get the the whiting is a little more apparent on the edges Thick thick cards of the black surface Still a huge Cade hit there Rookie auto pistons All right. Give me a sec. Everybody will recap the break All right relics. We had yusuf nerkic erin wiggins france vagner ben Simmons cj mccollom uh davion michael jaylon johnson isaac jackson dirt nevitzky Devin booker jimmy butler lebron james Autos christaps porzingis josh christopher george mcginnis ben wallis Ben wallis as a piston Greg brown the third robert covington as a blazer keon johnson redemption for the clipper snapshot signature christian latin ur jordan nwara steve kerr Jayshon tate Hit that cade rookie auto for the pistons to 49 big hit pistons Raining nights treyong hawks to 10 uh silver screen debuts warriors rookie auto jonathan kaminga 449 And a couple rpa's here. I had to assume move 72 and 99 bowls and xyre williams 26 and 99 brisleys Pretty good overall case. Thanks again everybody for joining. We're on the football for the rest of the night


The vast forests of central Africa contain one of the greatest concentrations of biodiversity on the planet. But rapid population growth in cities and towns such as Kisangani and Yangambi in the Democratic Republic of the Congo is putting ever greater pressure on this once impenetrable wilderness. Forest products supply the city via the Congo River from an area 100 kilometres to the west. A place of high historical value, Yangambi was once home to the largest tropical agriculture research centre in the world. It hosts a magnificent library with more than 30,000 books and a herbarium with 150,000 specimens, the largest collection in Africa. However, years of underfunding and political instability have taken their toll and only a fraction of the work that used to be carried out in the station is still possible today. The landscape of Yangambi spanning both the right and left banks of the Congo River now includes a biosphere reserve which includes 250,000 hectares of tropical forest, a valuable island of conservation in a fast changing landscape. But with around 100,000 people living in this landscape, many with limited economic opportunities, protecting the forest means overcoming a number of complex challenges. This is why C4, with the support of international and local partners, launched the Foray Project. Funded by the European Union, it aims to protect the biodiversity of Yangambi, while at the same time supporting revenue-generating activities aimed at improving the living conditions of the local population. We are going to plan a series of activities, be it in the framework of the population, the distribution of specimens and other alternatives that are in the sense of developing the environment, the well-being of the population to preserve the biodiversity. Agriculture is one of the main drivers of deforestation in Yangambi. Common techniques used by local farmers have low crop yields and clear forested areas. Another issue is charcoal and firewood production, the main sources of energy for cooking in the area. This is why Foray is working to introduce agroforestry techniques to make agriculture more sustainable and to improve existing value chains of commodities such as charcoal, timber and wild meat. The project is also regenerating previously deforested areas and creating dedicated plantations for wood fuel and renewable energy alternatives. Traditionally, wild meat is an important source of food and income in the region, but as tree cover is removed, the area is suitable for hunting, fragment and disappear. In recent years, hunters have found it increasingly difficult to find enough game to make a living and provide for their family, showing just how far animal numbers have fallen. But when given the chance, important species can quickly return. A recent camera trap survey confirmed the presence of chimpanzees in the area for the first time in decades. To address this, Foray is working with local communities in conservation efforts and to increase the alternatives to wild meat to ensure their food security. Yangambi's forests are made up of thousands of tree species. One of the most important is Afromosia, a golden hardwood long valued for its appearance and durability. Foray is working to develop a more sustainable logging sector as well as producing relevant research on how to preserve and regenerate the local flora and fauna. And to continue the legacy of Yangambi as a centre for learning, the Foray project is training the next generation of Congolese forest experts. In partnership with the University of Kisangani, C4 supports Masters and PhD students focusing on how to best manage existing forest resources and forest-dependent livelihoods. Together, working with the people of Yangambi, we can ensure that the forests continue to thrive for generations to come.


Hello, I'm Christophe Sotéryanis from being here to join us for this session about CloudKitty. Stefan Albert here from Objectiflib, like myself, and we're about to talk to you about this rating component for OpenStack. Before starting, who's here has been aware of CloudKitty before this morning when Marco, you mentioned it. Has anybody tried it? Okay, we have some work to do. But we'll talk about that later. For starting, let's talk a bit about Objectiflib. We have a service company based in France. The company was founded in 2009. And over the last few years, we have about 30 here, or growths every year. So we're doing quite well. I think it's the thick softened stack submit we're attending and the third as a sponsor or something like that. We do a lot of integration, deployment, trainings. Many people were happy. I think the numbers are something like 98% of the people who train about 3,000 exactly are very, very happy. We are doing a lot of research and development since it's about 30% of our income and we are currently 11 with two branches, one in Toulouse, which is the headquarters where I live and one in Paris. Our core subject, our core topics, are clearly the Linux infrastructure and everything related to OpenStack. We have quite a lot of expertise on various things and current OpenStack is clearly the main aspect that we are dealing with. We are not just using OpenStack. We are clearly involved in the community and many levels. Of course, we deploy and we run the cloud for some customers doing consultancy and all the kind of things you can imagine like this. We also participate a lot on the community by doing some conferences or meetups or whatever you want like this. We also develop and contribute. That's what we are about to talk because we are the main developer so far. We have a lot of other contributors in the next few weeks on CloudKitty. So just to say it right now, we are quite happy and quite excited because one month ago CloudKitty just entered a big tent. So it is quite important for us as you can imagine that right now we are an official project of OpenStack. So we are clearly the official project to do the rating and chargeback solution. I'm quite sure that's why you are here. CloudKitty has been developed since the beginning using all the OpenStack-based practices. Stefan will detail a bit more in a few seconds the architecture we have in mind when we started the project and that we applied. So we also integrate quite well with the rest of the OpenStack ecosystem that we have to deal with. Of course, we have some interaction with Cilometer using the API to get some metrics. But not only. We have a great interaction with Horizon that you are about to see during the demonstration we are about to do. We are using all the library you need to use when you're doing an OpenStack project and we are really, really highly modular. We have four levels of modularity and we will discuss about that in a few minutes. Using CloudKitty, CloudKitty can be used at different levels. Of course, you start to fetch information from Cilometer or another metric resource.  So that can define the rating policy and you can also analyze the cost information and the usage of your Cloud from your users.  And you also have a predictive view of what you're about to be charged for this kind of instance or resource you're about to launch. So before launching an instance, you will see the price you've been charged for that. And after that, if you want to extract information using the API once again, you can and that you can have some integration and post-treatment thing. But we will deal with that in a few seconds. As I said, we have a different level of interaction with CloudKitty. So depending the interest you have and the role you're having, you can have different interests using CloudKitty. If you're an IT manager, you might just want to be able to define the pricing policy for your customers. But you can also give a tool for your users to predict what the cost they will have when they are using your Cloud.  So you need to find a way to charge your customer. This is what is addressed by CloudKitty. Of course, it's multi-tenant, so you can charge your customer like you want. And once your customer has been using your Cloud, you will have an analysis of this usage. But also if you're an editor, if you're an editor of any solution that runs on the Cloud, you can use CloudKitty because CloudKitty has been created to be highly integrable with all the interactions you might have. So if you're editing a software, you can just use CloudKitty to be your rating and billing engine, even if not using OpenStack. So it's quite easy like this. I would like to define the rest for this part and to explain you the different aspect in CloudKitty. Thank you. So know that Christophe told you all CloudKitty is working from an IO view. I will show you what's inside and how it's working. So basically, you want to do some calculation on your metrics. For example, Syllometer, we will soon integrate in your key support too. And you will see all the steps that CloudKitty is doing to create your data ready for billing. So the first step is the tenant feature. So it's something modular. We added the tenant feature to be able to remove the dependency on Keystone for CloudKitty. So for example, the base tenant feature is a Keystone tenant feature. So you will fetch all the IDs of the tenants that need to be rated. So it works with V2 and V3. And basically, it's fetching all the UIDs so you apply a role on your client. So the basic role is RatingRole. And automatically, CloudKitty will fetch the tenant information and send it to the collector, which is the next step to collect the data. So the collector is responsible of retrieving and aggregating all the data. So it's pretty simple. It pulls the backend, for example, Syllometer, in the default configuration. And you pull the backend every hour, for example, to see if there is new data and if you need to apply rating calculation on this data. It's highly modular, so you can have any number of collector you want. You can use Syllometer and Yokey at the same time, if you want, for example. Or you can create your own collector if you have some specific data that you might have in some of your database, some information on your client. And you want to apply specific rules based on this data. You can have external data. So next step is the Rating step. So it's where all the calculation is done. Basically, it's a list of modules, so you can have any number of modules, too. And it performs calculation on the collected and aggregated data that you get from the previous step. And you can set priority on different Rating modules. So basically, you've got a list and it's sequential based on the priority. So you can have a first Rating module, for example, that is modifying some data to be able to do some more calculation later. All the configuration is made directly on an API. You don't need to modify any file. Every module can expose its own API. So basically, if you want to create a Rating module and you need to have a complex API to be able to configure it, you just need to create a new API and CloudTT will automatically expose it to the end user and operators. And you can enable and disable a module on the fly from the API. So you don't need to go to all of your calculation nodes and restart the services. The calculation is still consistent because the new settings are only applied when the calculation is done. So you don't have inconsistency because settings change during the calculation. And again, it's modular. I will detail some of the basic modules we've got for the Rating and CloudTT. So the first one is Ashmap. It's a pretty simple module, I would say. Its goal is to apply calculation based on the volume of your metric and some metadata. So you can apply mappings based on metadata or volume. For example, you can query data from your compute services and you want to apply a calculation based on the instance of time, based on its flavor and rate, based on this metadata. So, for example, a basic collector is Cilometer and you get all the data from the Cilometer backend and you can apply rules based on every metadata you get from Cilometer. There is threshold calculations too, so you can apply levels. Threshold is really useful when you're doing a rating on network volume, for example, or cinder volumes. Basically, you want to change the price if a client is purchasing a bigger volume. So you can apply discount based on levels. And finally, all the calculations are decomposed in groups. So you can group all the previous matchings you've done in groups. For example, if you want to have a group for your instance of time, you will group all your calculations in instance of time group and another one for the volume, for example. But we will see this later in the demo. The new module that we added in a few weeks ago is PyScripts. We had some demands for this. Basically, you can create your own Python script to the rating. So if you need to have some complex operation, you just write a piece of code, you send it to the API and it will distribute it automatically to all your calculation nodes. And finally, the last part, it's the storage. So its goal is to take all the data you've got in the input and store it with the rated data. The goal is to have the input just for legal purposes so you don't only store what's the final result. You can tell your client the final result is this value because the input was this. Again, there is an API on top of the storage. So every backend got an API. You can query the API to get information for the tenants, all the tenants, you can apply filters, so you can easily generate reports to send to your clients. By default, we're supporting SQL Alchemy. We hope to be able to find a way to integrate with Nukey during the Mitaka cycle. And again, it's modular. You can create your own backend. For example, if you want to send your data directly to your billing system, you can create your own module and send the data back to the billing system. So you can have a common API for Cloud Kitty and your billing system, and sort the data directly to your billing system and query the data directly from Cloud Kitty, which will fetch data from the billing system. And then you're done. Your data is aggregated. You've got rates. You can directly show to your client what is its consumption in Horizon, and you can show back on the fly when he wants to create a new resource. Alongside with Cloud Kitty, we're also providing and working on a report generator. Like Stefan said, during the storage phase in Cloud Kitty, we provide a way to interact with your billing system. But not all billing systems are able to accept requests using API. So sometimes you need to provide to your billing system a simple file from the way they want it to be. So that's what you do with the report generator. We provide a tool that will request the API and allow you to format the file the way you want it. We have multiple formats that we can provide. And by the way, we can provide multiple files at the same time, like CSV. That's why we decided not to... The idea behind this tool is that we don't want to provide another billing system. We don't want to create another ERP, because all our customers and all the users of Cloud Kitty already have their own ERP. So we clearly know that people won't change their ERP to use Cloud Kitty. So we say, okay, instead of giving this brand new tool that we have to use, let's say that we can operate with their own existing system. And the fact is that at the end we provide a report that you can give to a user directly if you just want to do charge back, or you can give to your tool if you want to create the bill. And of course, it's highly modular here too. We're going to do a demo here. Since we like to play games, we're about to do a live demo. So let's hope it was quite good, but I'm quite confident. Yes, we'll see. Just before starting, on the slide that we're about to provide here, after the demo you'll see that we have added a slide with the links to all the demo on YouTube, so that if you don't have the time to see everything right here, you'll be able to download that on YouTube. And since the session is recorded, you'll be able to look at the links during the video recording that we made. I've got a question. Can you read what's on the screen? Or do you want me to expand it? It's fine. Okay. This way. Okay. Is it better? Yes? Okay. Good. So we'll create a basic rating rule to show you how it's working. So we go in the admin view, so it's where you will set all your rating rules. So you've got a new panel, which is named Rating, and you've got a list of your rating module. There you can see what rating module is loaded in Cloud Kitty, and you can enable or disable it on the fly. So we will mainly use Ashmap, because I guess you don't want to see me write Python during 10 minutes. So enable the module. You can have more information on the module if you want to have these documentation, see its priority. And then we'll start creating a rating rule. So we want to build our client based on the end-sense of time. So we'll do... I can't read what I'm typing. I guess it's good. So it's based on the compute services, which is Nova compute. And then we do mappings on metadata. So we want to create a rule that will build a client based on the end-sense of time and the flavor of the instance. So we'll do two mappings based on the flavor. Live demo. I'm in the group view. I'm sorry. So Fields. Fields is a match based on metadata of a resource. So yeah, it's flavor. I was in the wrong tab. Flavor. And then we create two mappings. M1 tiny. In the wrong tab again. It's M1 tiny. And here we set the type to flat. So it's the base price for M1 tiny you can apply rates to if you want to do percentages. But we'll do basic pricing. So 1.5, for example. So it will cost 1.5 per hour. Because in our configuration we are pulling data every hour and aggregating data. And we will create a new group that we will call instance of time to apply on all the calculations. So I will do the same thing for another flavor. M1 small. No, that's it. Two. And again, I can set it in a group. Okay, that's fine. You can have information too on what's in a group. If you want in a group view. So you can see all the calculations that will be done for a group. And then I will show you how you can define a threshold. So again, we create a new service mapping on volume. So it's in the volume in this case. We do service mappings. So service mapping is based on the raw volume of your metric where field is based on the metadata field of your metric. Yes, service mapping. Sorry, it's simple. It will be 0.9 per gigabyte. And we create a new group. So we don't apply this calculation on the... Type 0.1. What? Type 0.1. Okay. And now we want to apply a discount on your client. So if he's... The data generated and the data presented. You've got two volume. One is 10 gigabyte and one is 20 gigabyte. So we'll apply a threshold on 15 gigabyte. So we'll have two different prices. So 15 gigabyte. We apply a rate. So we do percentage... And we apply it to our volume calculation. Okay. So now we are set all our rating rule. And we will go in the demo view to see what's the impact on the end user. Okay. So the first thing I want to show you is the instance price... Instant pricing. So you can get an overview of what will be the cost. So for example, if I want to create a new instance... Test instance. Like I said, we set two rules. One for M1 tiny and one for M1 small. So you can see that there is a new box on the bottom called rating information with the price. So if I change my field, it will be updated on the fly. So your user can clearly see how much a new instance we cost him. There is two overview. So a new panel called rating. There is one. It's pretty empty at the moment. It's the current total. It's the total for the current month. So your client knows how much he consumed for the current month. And the last one, I'm sorry, is reporting. It's pretty slow. It's a DevTag on my machine, so it's pretty slow. There is a huge load of data. It queries the storage API from our Python and generate graphs. So here we get graphs from the current user with spikes. And you can see a breakdown of your consumption. So compute, for example, in volume here since we only done two rules. And you can get an overview of what's your consumption. We'll go back to the last part of the session. Like I said, there is the link of the videos. We've cut this demonstration in four. Well, like we did a live demo. It is not exactly the same one, but that's clearly the same idea. We have some ongoing evolution, of course, for the next few months. The first one, and Stefan already mentioned that a few times, is that we are working with the guy from Nokia to get the support of Nokia inside the CloudKiddy. It will be clearly a huge step for improving the use cases that you can have using CloudKiddy and the integration with Celerometer. We also started to work on a new storage backend so that we can have a better scalability. But the thing that people tend to notice the most is the graphical aspect. So we will continue to work on that. We have two things that we are about to improve. The first one is the reporting. We have many things that we have in mind for improving reporting. And also, we want to help the Cloud provider or the people who are in charge of the OpenStack to have an easier policy definition. Like you just said, it's not really complicated to define that, but it can be a bit tricky if you're not used to saying, which group do I need to take and which name do I need to use, so we have in mind something which is quite simple, I think. Actually, if you want to try CloudKiddy, you can. We are providing many repositories for DbAndroid 2, for Redat Linux 2, but if you want to try it with DevStack, it's quite simple. You just have to do that, and it will be done.  Please, if you have any questions, come to visit us. We have a booth. It's just between the two rooms. It's number T66. We have some stickers of CloudKiddy here, but we have some stickers too on the booth, so we'll be really happy to give you that, and we don't want to come back in front of them. We also have some design sessions. One is tomorrow at 2.40. It's in the Kotobuki room, and there's another one. Please attend, and we'll be really happy to exchange with you so that we can be more aware of what you're looking at and what you're expecting and what you need, because sometimes that's something which is quite difficult for us to understand what you need. Actually, we will show more things in the tomorrow session because the time is pretty short for this session. We have screenshots of the new UI and the collector, so you can see all the data that is coming in the collector so you don't have to guess what will be the fields. We have screenshots for that because we already decided to work on that, so we'll be more than happy to show you that. And that's it. Do you have any questions? Actually, we set it to work on something like more than a year ago, but since we're just a small company, it's quite difficult for us to get people through years. But we are really happy that we've been able to enter the big tent because we really think it may be a huge speed-up for the project. So the question was, sorry, I didn't repeat your first question. The question was just for the record. What do you want to do if you want to rate just for the network? Yes. You can do this. You've got all the metrics that you have in Silometer, so you just need to enable it in your collector and say, I want network usage, I want floating IP or I want an image if a client can create an image. You can do whatever you want. If the metric is present in Silometer, you can do it. If it's not present in Silometer, you can create a collector module, for example, that will pull an API and get you information. And it will store it in the storage backend too, so you don't have to do tricky stuff, actually. Actually, if you're working for anybody of you who is working with an SDN provider or a storage provider, we'd be more than happy to rate the collector, and so we'd be more happy to talk with you to be able to integrate more and more data in-cycle, and that would be terrific for us. More questions? In-cycle? Yes. It's based on seconds. The question was, can you customize the building cycle? Yes. So there is a field in the configuration, so you can set whatever seconds you want. Is it what you were looking for? Because you might want different building cycles for different customers, right? Yes, I see. So if you want to have different building cycles, it's not in the code at the moment. We are working on it because, for example, when you're doing a network rating, you want to do it for the month, for example, for the current month. At the moment, we are applying calculation on every cycle. So if you say one hour cycle, your calculation will be done on every cycle. You can create your own module, for example, to exclude some cycle or aggregate the data in the storage and query the storage and get your data back at the end of the month, but it's not out of the box at the moment. I think we're maybe time for just another question. In terms of scalability, how do you see things? That's a tricky question. Maybe not so unscalable at the moment. We are working on a new storage backend because we are doing a storage, the Cilometer way, maybe not the best. And we want to use Gnocchi as a storage backend to... don't have to focus on how to store data and basically store directly a reference to the... Basically, we will have a new resource, which is a rated resource and a reference... a rate metric and a reference to the resource. So you don't have to double the data sources. Just a side note, we just received... and we finished with that. We just received an email last week from a company we met in Vancouver telling us, okay, we are really happy with CloudKiddy and we didn't know they were working on that. And we've been able to use it to charge many thousands of instances already. So we're quite happy so far. Maybe it's not for units right now, but it might be able to fix the needs for many, many people already. Okay, thanks a lot for attending it. If you have more questions, just comment or talk to us.


What's going on guys got Colin Donnie here with Layton Sports Cards and we are doing Personals we got four boxes for Don G got four boxes 2023 Leaf metal hobby good luck here Don let's see what we got some leaf metal hobby and a little kill uh Kayla Williams action here good luck good luck I always thought watching soccer would like improve your skills at FIFA it doesn't work like that no no you kind of got a I mean because if you're like watching tactics or whatever but it's kind of welcome zoom in make a play empty good luck Don first up we got Max Duggan on the blue mojo rookie Otto the uh Chargers new rookie QB five of five nice dug in there behind that we have so money on the black wave hinden hooker nice one there lions new QB three of three lions hinden hooker three of three out of Tennessee got a Tyler Scott tri-color rookie one of four Tyler Scott this one is another so money it's a one of one is Chris Rodriguez junior gonna be the commander's new rookie running back that one is one of one on the sign proof nice one there commander's new rookie running back and on the back we got Joe Montana on the tie-dye oh it's three out of four nice uh Joe Montana they do like to put some Joe Montana leaf products it's Joe there to four box two here for you Don good luck this one is Cameron Peoples on the purple mojo numbered one of five Otto Cameron Peoples we've got Clark Phillips the third Clark Phillips that one is two of three on the Clark Phillips rookie the fuchsia this one is Charbonne gold one of two nice one there the new um Seahawks rookie running back Zach Charbonne at a UCLA got another one of one pre-production proof it's going to be Xavier Hutchinson Xavier Hutchinson on the rookie um one of one production proof and we've got here comes the boom will Anderson nice rookie there out of uh or for the Texans one of five out of Bama here comes the boom to five it's will Anderson you know box three which one where's the boom wherever are you here comes the boom i don't know what was i don't know i can't think of it there's a uh Ronnie Bell rookie there number to five have a michigan Ronnie Bell is in the longest year roshan johnson there bears rookie that one is one of three out of Texas one of three roshan johnson got jade and reed that one's going to be uh two of five on the pink pink ice jade and reed got another one of one production proof it's going to be um Marvin win uh Marvin mims broncos rookie on the one of one signed pre-production proof Marvin mims and last one of this box we got a so money of Jordan Addison nice one there vikings new rookie receiver that one is five out of five Addison's going to be a nice one i think uh obviously Jefferson's going to take some pressure off him i don't know how you could not could not double jefferson this year i think i have feeling Addison's going to have a really strong like three or four first weeks and then they're going to start yeah so i have to tell you looking looking that way instead of just worried about jefferson yeah all righty last box here don this is four boxes for um leaf metal got tank del houston's new rookie receiver tank del that one is number three out of four you might be pretty good if you get the chance to do something yeah pretty good he's a big body i don't know how houston's going to do man they got michi coming in her bet she um could be solid right this one is here comes the boom miles murphy now one is one out of four i like these here comes the boom miles murphy out of clemson got rishi rice just scored for the chiefs tonight to a six rishi rice new chiefs receiver we've got a brian breeze that one is going to be um a redemption so we don't know the um color or the card on this one until you do redeem it brian breeze there another one out of clemson and on the back we've got a drake may that's the uh u n c q b this year armed and dangerous still in college one of three on the drake may was a early favorite um for heisman up there with katelyn williams couple other guys nice one there drake may to five or sorry three all ready to dawn that will do it for your four boxes of leaf um leaf metal hobby we'll get those right out to you sir


Making under the waves as an indie team was very interesting because we had to tackle a lot of complex subjects. We started the project with five, six persons. Today we're at 19 persons, so we're still an indie team, but we're a very hungry indie team.