add coverage and restructure directories