Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
This looks really good. It is a better check than just seeing if each set adds up to 45.
Only thing, I think it is more semantic to use
valid.each do ...
rather thanmap
since you aren't intending to do anything with the resulting array (that map returns).