threads copied from fjs