introduce self //by @yuliadi