thread style implement