https://levelup.gitconnected.com/mastering-pydantic-2-building-a-real-world-library-management-system-adf1f893daa8