using inner upload class