Added what I have so far, doesnt compile yet