refactored from placeholder to diary package