new lib files
metaphor diagram from mark