ah, basic concepts includes more stuff i put in methods and interfaces