works portion somewhat done