class blocking begin