optparse+better dir