Could be much faster.