moved expensive method to background