making it more efficient