initial implementation; threads initialized