anchor.diff:        if proposals.clusters  # In case /proposals isn't loaded
           curr_cluster = _.findWhere proposals.clusters, {name: @proposal.cluster}
           if curr_cluster?.proposals.length > 1
  +          proposals = sorted_proposals(curr_cluster)
             # Now find the current proposal in the cluster, and return the next one
  -          for proposal, index in curr_cluster.proposals
  +          for proposal, index in proposals
               if @proposal == proposal
                 break
  -          next_index = mod(index + 1, curr_cluster.proposals.length)
  -          prev_index = mod(index - 1, curr_cluster.proposals.length)
  -          [curr_cluster.proposals[next_index], curr_cluster.proposals[prev_index]]
  +          next_index = mod(index + 1, proposals.length)
  +          prev_index = mod(index - 1, proposals.length)
  +          [proposals[next_index], proposals[prev_index]]
   
       DIV
         style:
  
positive.code:                 'Support'
                options.homie_histo_title || 'Opinions'
  
              for proposal in sorted_proposals
                icons = options.editor_icons
  
                # Proposal
  
negative.code:   if proposal.top_point
      result += '?results=true'
    return result
  
  proposal_support = (proposal) ->
    opinions = fetch('/page/' + proposal.slug).opinions
    if not opinions
      return null
    sum = 0
    for o in opinions
      sum += o.stance
    return sum
  
  
  sorted_proposals = (cluster) ->
    options = window.cluster_options?[cluster.name] || {}
    _.clone(cluster.proposals).sort((a,b) ->
      x_a = proposal_support(a) - 10000 + (if options.editor_icons \
                                           and proposal_editor(a) then 1 else 0)
      x_b = proposal_support(b) - 10000 + (if options.editor_icons \
                                           and proposal_editor(b) then 1 else 0)
      return x_b - x_a)
  
  getStanceSegment = (value) ->
    for i in [0..5]
  