anchor.diff:              view =   fun v -> if v then 1 else 0
               kind = ResourceKind.Unknown
           })
  +
  +
  +    member x.Release() = 
  +        
  +        uniformBufferManager.Dispose()
positive.code:     let viewCache = ResourceCache<UniformBufferView, int>(None, None)
      let rw = new ReaderWriterLockSlim()
  
      member x.CreateUniformBuffer(scope : Ag.Scope, u : IUniformProvider, additional : SymbolDict<IMod>) : IResource<UniformBufferView, int> =
          let values =
              block.ubFields 
              |> List.map (fun f ->
  
negative.code: 
          let key = values |> List.map (fun (_,v) -> v :> obj)
  
          let alignedSize = (block.ubSize + 255) &&& ~~~255
  
          viewCache.GetOrCreate(
              key,
              fun () ->
  