specify path for main
better gaa
template should be less specific
recursive listing
test existence before use