this thread is awful...