Code complete ready for testing

complete ready for buggy