big commit with all the yo code that works 100% :)