optional temp dir