directory basic functionality