Implementations of 004, 005 and 006.