before using threading