fixed `cached_property`
check for getter after getting computed value failed
use cached_property instead of internal properties
optimized `cached_property`