code refactor & add launch script