     
     private func shareSolutionImage()
     {
+        let allFooters:CGFloat = CGFloat(model.steps.count)
+        let allFootersHeight:CGFloat = allFooters * kFooterHeight
+        let removeSize:CGFloat = kBarHeight + allFootersHeight
         let collectionView:VCollection = viewSolution.collectionView
-        let size:CGSize = collectionView.contentSize
-        let frame:CGRect = CGRect(origin:CGPoint.zero, size:size)
-        
-        UIGraphicsBeginImageContextWithOptions(size, true, 0)
+        let originalSize:CGSize = collectionView.contentSize
+        let exportbleHeight:CGFloat = originalSize.height - removeSize
+        let exporableSize:CGSize = CGSize(
+            width:originalSize.width,
+            height:exportbleHeight)
+        let frame:CGRect = CGRect(origin:CGPoint.zero, size:exporableSize)
+        
+        UIGraphicsBeginImageContextWithOptions(exporableSize, true, 0)
         
         guard
             

        context.fill(frame)
        
        var stepIndex:Int = 0
        
        for step:MLinearEquationsSolutionStep in model.steps
        {

                    model:item,
                    index:indexPath)
                let cellFrame:CGRect = cell.frame
                let exportableCellFrame:CGRect = cellFrame.offsetBy(
                    dx:0,
                    dy:-removeTop)
                cell.drawHierarchy(
                    in:exportableCellFrame,
                    afterScreenUpdates:true)
                
                itemIndex += 1
            }
            
            stepIndex += 1
            removeTop += kFooterHeight
        }
        
        guard
