with roles and somthing carrierwave