Some progress, not working but compiles