modify area upload function