dir struct upload