added def __nonzero__