         { value : "allowed",        title : "Allowed for all members" }
       ]
 
+    @advancedModeLabel = new KDLabelView title: 'Advanced mode'
+
+    @advancedMode = new KDOnOffSwitch
+      label     : @advancedModeLabel
+      callback  : @bound 'toggleAdvancedMode'
+
+    @debitButton = new KDButtonView
+      cssClass  : "clean-grey"
+      title     : "Debit..."
+      callback  : =>
+        number = +prompt "How many VMs do you want to debit?", "1"
+        debits =
+          cpu   : number * computeUnitMap.cpu
+          ram   : number * computeUnitMap.ram
+          disk  : number * computeUnitMap.disk
+        bundle.debit debits, (err)->
+          console.error err  if err
+
+  toggleAdvancedMode: (state) ->
+    method = if state then 'show' else 'hide'
+    for own limitName, notHidden of computeUnitVisibility when not notHidden
+      @limits[limitName][method]()
+
+  initializeSlider: (limit) ->
+
+    slider = switch limit.title
+      when 'vms'    then @computeSlider
+      when 'users'  then @usersSlider
+
+    return  unless slider?
+
+    @utils.defer =>
+      {quota} = if limit.title is 'vms' then @limitsData.cpu else limit
+      slider.setValue quota
+      slider.emit 'change'
+
   renderLimits: (limits) ->
     @limits.destroySubViews()
     @limitsData = {}

      <div>{{> @usersLabel}} {{> @usersSlider}}</div>
      <div>{{> @computeLabel}}  {{> @computeSlider}}</div>
      <div>{{> @overageLabel}} {div#overage{> @overagePolicy}}</div>
    </div>
    {{> @limits}}
    <div>{{> @saveButton}} {{> @destroyButton}}</div>
    """

# class GroupsBundleLimitWrapper extends KDObject

      title     : "Save bundle"
      callback  : =>
        overagePolicy = @overagePolicy.getValue()
        quotas = {}
        quotas[title] = +limit.quota  for own title, limit of @limitsData
        group.updateBundle { overagePolicy, quotas }

    @overageLabel = new KDLabelView
      title     : 'Overage policy'
