sharing works! need to refine