no external dependencies