     @_trials = {}
 
     mainController.ready =>
+      { appStorageController, notificationController } = kd.singletons
 
       @bindPaymentEvents()
 


      @createDefaultStack()

      @appStorage = kd.singletons.appStorageController.storage 'Compute', '0.0.1'

      debug 'now ready'
      @emit 'ready'

      @checkGroupStackRevisions()
      @checkGroupStacks()

      kd.singletons.notificationController.on 'DisabledUserStackAdded', (data) =>
        debug 'disabled user stack added', data
        if groupsController.canEditGroup()
          @checkMachinePermissions()

      if groupsController.canEditGroup()
        @checkMachinePermissions()

      @checkMachines()


  # ComputeController internal helpers



  sharedStackTemplateAccessLevel: (params) ->

    { reactor } = kd.singletons
    { contents: { id: _id, change: { $set: { accessLevel } } } } = params

