main function v0.1