migrate to cortex #4
adjust file structure
migrate to upload component #16