NB. I've deleted the inline comments for these two modules.