The first implementation.