And I think a lot of the ways that you want to become good at the math of machine learning yourself, this is a good way to do it. It's time-consuming but then you can become good at it that way. And same thing for codes, right? I think the simple lightweight version one of learning would be to download and run the open source code if you can find it, and a deeper way to learn this material is to re-implement it from scratch. Right, it is easy to download an open sourcing and run it and say ooh, it works. But if you can re-implement one of these algorithms from