Multi threading would be smart....