make use of uploader component
fix simple errors