Source Generation
Now working in class