thread data ptr
use of ctx pointer
thread data branch in PKGBUILD
used of self keeping shared ptr
version update