#NEWLINE# def shrink_up_shared( self , cidx , amt ) : #NEWLINE# #INDENT# 'Shrink the shared space\n\n        Will shrink all secondary clients above the specified index by an equal\n        share of the provided amount. After applying the shared amount to all\n        affected clients, any amount left over will be applied in a non-equal\n        manner with ``shrink_up``.\n\n        Any amount that was unable to be applied to the clients is returned.\n        ' #NEWLINE# per_amt = ( amt / cidx ) #NEWLINE# left = idx #NEWLINE# for idx in range ( 0 , cidx ) : #NEWLINE# #INDENT# left -= ( per_amt - self . shrink ( idx , per_amt ) ) #NEWLINE# #UNINDENT# left = self . shrink_up ( cidx , left ) #NEWLINE# return left