add missing demo and optimise for py3