impl directory walk