1st commit: initial version, iwht all key features