finish the basic implementation
remove persist code and using the persistent service from special
project