https://www.gitbook.io/book/zyeeda/cdeio-developer-manual