specify base dir at use time