cesium 0.20.0 → 0.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1976) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/Cesium.js +46 -3
  3. data/app/assets/javascripts/Core/BingMapsApi.js +41 -0
  4. data/app/assets/javascripts/Core/BoundingRectangle.js +4 -3
  5. data/app/assets/javascripts/Core/BoundingSphere.js +17 -17
  6. data/app/assets/javascripts/Core/BoxGeometry.js +3 -3
  7. data/app/assets/javascripts/Core/BoxOutlineGeometry.js +6 -6
  8. data/app/assets/javascripts/Core/Cartesian2.js +23 -268
  9. data/app/assets/javascripts/Core/Cartesian3.js +24 -284
  10. data/app/assets/javascripts/Core/Cartesian4.js +25 -256
  11. data/app/assets/javascripts/Core/CatmullRomSpline.js +17 -16
  12. data/app/assets/javascripts/Core/Color.js +12 -3
  13. data/app/assets/javascripts/Core/ColorGeometryInstanceAttribute.js +8 -4
  14. data/app/assets/javascripts/Core/CornerType.js +15 -0
  15. data/app/assets/javascripts/Core/CorridorGeometry.js +67 -317
  16. data/app/assets/javascripts/Core/CorridorGeometryLibrary.js +287 -0
  17. data/app/assets/javascripts/Core/CorridorOutlineGeometry.js +388 -0
  18. data/app/assets/javascripts/Core/CylinderGeometry.js +4 -4
  19. data/app/assets/javascripts/Core/CylinderOutlineGeometry.js +1 -1
  20. data/app/assets/javascripts/Core/EllipseGeometry.js +8 -8
  21. data/app/assets/javascripts/Core/EllipseGeometryLibrary.js +3 -3
  22. data/app/assets/javascripts/Core/Ellipsoid.js +1 -1
  23. data/app/assets/javascripts/Core/EllipsoidGeodesic.js +4 -4
  24. data/app/assets/javascripts/Core/EllipsoidTangentPlane.js +10 -7
  25. data/app/assets/javascripts/Core/EllipsoidalOccluder.js +10 -10
  26. data/app/assets/javascripts/Core/EncodedCartesian3.js +2 -2
  27. data/app/assets/javascripts/Core/ExtentGeometry.js +10 -10
  28. data/app/assets/javascripts/Core/ExtentOutlineGeometry.js +2 -2
  29. data/app/assets/javascripts/Core/GeometryAttributes.js +12 -0
  30. data/app/assets/javascripts/Core/GeometryInstance.js +7 -0
  31. data/app/assets/javascripts/Core/GeometryPipeline.js +78 -49
  32. data/app/assets/javascripts/Core/HeightmapTessellator.js +1 -1
  33. data/app/assets/javascripts/Core/HermiteSpline.js +13 -12
  34. data/app/assets/javascripts/Core/IntersectionTests.js +17 -17
  35. data/app/assets/javascripts/Core/Math.js +2 -2
  36. data/app/assets/javascripts/Core/Matrix4.js +3 -3
  37. data/app/assets/javascripts/Core/NearFarScalar.js +76 -4
  38. data/app/assets/javascripts/Core/Occluder.js +46 -46
  39. data/app/assets/javascripts/Core/OrientationInterpolator.js +5 -4
  40. data/app/assets/javascripts/Core/PolygonGeometry.js +29 -26
  41. data/app/assets/javascripts/Core/PolygonPipeline.js +36 -36
  42. data/app/assets/javascripts/Core/PolylineGeometry.js +271 -0
  43. data/app/assets/javascripts/Core/PolylinePipeline.js +1 -1
  44. data/app/assets/javascripts/Core/Quaternion.js +7 -238
  45. data/app/assets/javascripts/Core/Ray.js +2 -1
  46. data/app/assets/javascripts/Core/Shapes.js +18 -18
  47. data/app/assets/javascripts/Core/ShowGeometryInstanceAttribute.js +9 -4
  48. data/app/assets/javascripts/Core/Simon1994PlanetaryPositions.js +5 -6
  49. data/app/assets/javascripts/Core/SimplePolylineGeometry.js +66 -12
  50. data/app/assets/javascripts/Core/Transforms.js +2 -2
  51. data/app/assets/javascripts/Core/TridiagonalSystemSolver.js +9 -8
  52. data/app/assets/javascripts/Core/WallGeometry.js +7 -7
  53. data/app/assets/javascripts/Core/barycentricCoordinates.js +26 -10
  54. data/app/assets/javascripts/DynamicScene/CompositeDynamicObjectCollection.js +489 -201
  55. data/app/assets/javascripts/DynamicScene/CzmlDataSource.js +232 -232
  56. data/app/assets/javascripts/DynamicScene/DynamicBillboard.js +128 -40
  57. data/app/assets/javascripts/DynamicScene/DynamicBillboardVisualizer.js +30 -15
  58. data/app/assets/javascripts/DynamicScene/DynamicClock.js +76 -50
  59. data/app/assets/javascripts/DynamicScene/DynamicCone.js +117 -47
  60. data/app/assets/javascripts/DynamicScene/DynamicConeVisualizerUsingCustomSensor.js +20 -21
  61. data/app/assets/javascripts/DynamicScene/DynamicEllipse.js +67 -39
  62. data/app/assets/javascripts/DynamicScene/DynamicEllipsoid.js +56 -26
  63. data/app/assets/javascripts/DynamicScene/DynamicEllipsoidVisualizer.js +18 -17
  64. data/app/assets/javascripts/DynamicScene/DynamicLabel.js +110 -44
  65. data/app/assets/javascripts/DynamicScene/DynamicLabelVisualizer.js +17 -17
  66. data/app/assets/javascripts/DynamicScene/DynamicObject.js +181 -117
  67. data/app/assets/javascripts/DynamicScene/DynamicObjectCollection.js +226 -52
  68. data/app/assets/javascripts/DynamicScene/DynamicObjectView.js +7 -7
  69. data/app/assets/javascripts/DynamicScene/DynamicPath.js +86 -36
  70. data/app/assets/javascripts/DynamicScene/DynamicPathVisualizer.js +18 -18
  71. data/app/assets/javascripts/DynamicScene/DynamicPoint.js +69 -31
  72. data/app/assets/javascripts/DynamicScene/DynamicPointVisualizer.js +10 -10
  73. data/app/assets/javascripts/DynamicScene/DynamicPolygon.js +51 -25
  74. data/app/assets/javascripts/DynamicScene/DynamicPolygonVisualizer.js +11 -11
  75. data/app/assets/javascripts/DynamicScene/DynamicPolyline.js +68 -31
  76. data/app/assets/javascripts/DynamicScene/DynamicPolylineVisualizer.js +13 -13
  77. data/app/assets/javascripts/DynamicScene/DynamicPyramid.js +80 -35
  78. data/app/assets/javascripts/DynamicScene/DynamicPyramidVisualizer.js +20 -19
  79. data/app/assets/javascripts/DynamicScene/DynamicVector.js +68 -30
  80. data/app/assets/javascripts/DynamicScene/DynamicVectorVisualizer.js +12 -12
  81. data/app/assets/javascripts/DynamicScene/GeoJsonDataSource.js +2 -2
  82. data/app/assets/javascripts/DynamicScene/MaterialProperty.js +6 -4
  83. data/app/assets/javascripts/DynamicScene/ReferenceProperty.js +2 -2
  84. data/app/assets/javascripts/DynamicScene/createDynamicPropertyDescriptor.js +26 -0
  85. data/app/assets/javascripts/Renderer/AutomaticUniforms.js +1525 -0
  86. data/app/assets/javascripts/Renderer/Context.js +83 -17
  87. data/app/assets/javascripts/Renderer/CubeMap.js +2 -2
  88. data/app/assets/javascripts/Renderer/PickFramebuffer.js +2 -2
  89. data/app/assets/javascripts/Renderer/RenderState.js +4 -5
  90. data/app/assets/javascripts/Renderer/ShaderProgram.js +224 -1882
  91. data/app/assets/javascripts/Renderer/Texture.js +2 -2
  92. data/app/assets/javascripts/Renderer/TextureWrap.js +2 -2
  93. data/app/assets/javascripts/Renderer/UniformState.js +16 -12
  94. data/app/assets/javascripts/Scene/Appearance.js +2 -0
  95. data/app/assets/javascripts/Scene/Billboard.js +9 -7
  96. data/app/assets/javascripts/Scene/BillboardCollection.js +8 -9
  97. data/app/assets/javascripts/Scene/BingMapsImageryProvider.js +12 -4
  98. data/app/assets/javascripts/Scene/Camera.js +151 -122
  99. data/app/assets/javascripts/Scene/CameraController.js +176 -50
  100. data/app/assets/javascripts/Scene/CameraEventAggregator.js +4 -4
  101. data/app/assets/javascripts/Scene/CameraFlightPath.js +58 -51
  102. data/app/assets/javascripts/Scene/CentralBody.js +25 -25
  103. data/app/assets/javascripts/Scene/CentralBodySurface.js +28 -27
  104. data/app/assets/javascripts/Scene/CentralBodySurfaceShaderSet.js +30 -12
  105. data/app/assets/javascripts/Scene/CompositePrimitive.js +7 -2
  106. data/app/assets/javascripts/Scene/CustomSensorVolume.js +12 -9
  107. data/app/assets/javascripts/Scene/EllipsoidPrimitive.js +8 -5
  108. data/app/assets/javascripts/Scene/EllipsoidSurfaceAppearance.js +2 -2
  109. data/app/assets/javascripts/Scene/ExtentPrimitive.js +4 -5
  110. data/app/assets/javascripts/Scene/FrameState.js +0 -7
  111. data/app/assets/javascripts/Scene/ImageryLayer.js +6 -6
  112. data/app/assets/javascripts/Scene/Material.js +256 -160
  113. data/app/assets/javascripts/Scene/MaterialAppearance.js +2 -2
  114. data/app/assets/javascripts/Scene/OrthographicFrustum.js +30 -27
  115. data/app/assets/javascripts/Scene/PerInstanceColorAppearance.js +3 -1
  116. data/app/assets/javascripts/Scene/PerformanceDisplay.js +2 -2
  117. data/app/assets/javascripts/Scene/PerspectiveFrustum.js +41 -38
  118. data/app/assets/javascripts/Scene/PerspectiveOffCenterFrustum.js +46 -43
  119. data/app/assets/javascripts/Scene/Polygon.js +38 -10
  120. data/app/assets/javascripts/Scene/Polyline.js +4 -2
  121. data/app/assets/javascripts/Scene/PolylineCollection.js +9 -6
  122. data/app/assets/javascripts/Scene/PolylineColorAppearance.js +150 -0
  123. data/app/assets/javascripts/Scene/PolylineMaterialAppearance.js +157 -0
  124. data/app/assets/javascripts/Scene/Primitive.js +89 -58
  125. data/app/assets/javascripts/Scene/PrimitivePipeline.js +18 -5
  126. data/app/assets/javascripts/Scene/RectangularPyramidSensorVolume.js +3 -3
  127. data/app/assets/javascripts/Scene/Scene.js +67 -38
  128. data/app/assets/javascripts/Scene/SceneTransforms.js +83 -6
  129. data/app/assets/javascripts/Scene/SceneTransitioner.js +65 -65
  130. data/app/assets/javascripts/Scene/ScreenSpaceCameraController.js +22 -22
  131. data/app/assets/javascripts/Scene/SkyAtmosphere.js +6 -5
  132. data/app/assets/javascripts/Scene/Sun.js +198 -11
  133. data/app/assets/javascripts/Scene/SunPostProcess.js +2 -3
  134. data/app/assets/javascripts/Scene/Tile.js +19 -6
  135. data/app/assets/javascripts/Scene/ViewportQuad.js +4 -2
  136. data/app/assets/javascripts/Shaders/Appearances/AllMaterialAppearanceFS.js +5 -5
  137. data/app/assets/javascripts/Shaders/Appearances/AllMaterialAppearanceVS.js +5 -5
  138. data/app/assets/javascripts/Shaders/Appearances/BasicMaterialAppearanceFS.js +5 -5
  139. data/app/assets/javascripts/Shaders/Appearances/BasicMaterialAppearanceVS.js +5 -5
  140. data/app/assets/javascripts/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.js +5 -5
  141. data/app/assets/javascripts/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.js +5 -5
  142. data/app/assets/javascripts/Shaders/Appearances/PerInstanceColorAppearanceFS.js +5 -5
  143. data/app/assets/javascripts/Shaders/Appearances/PerInstanceColorAppearanceVS.js +5 -5
  144. data/app/assets/javascripts/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.js +5 -5
  145. data/app/assets/javascripts/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.js +5 -5
  146. data/app/assets/javascripts/Shaders/Appearances/PolylineColorAppearanceVS.glsl +26 -0
  147. data/app/assets/javascripts/Shaders/Appearances/PolylineColorAppearanceVS.js +27 -0
  148. data/app/assets/javascripts/Shaders/Appearances/PolylineMaterialAppearanceVS.glsl +28 -0
  149. data/app/assets/javascripts/Shaders/Appearances/PolylineMaterialAppearanceVS.js +29 -0
  150. data/app/assets/javascripts/Shaders/Appearances/TexturedMaterialAppearanceFS.js +5 -5
  151. data/app/assets/javascripts/Shaders/Appearances/TexturedMaterialAppearanceVS.js +5 -5
  152. data/app/assets/javascripts/Shaders/BillboardCollectionFS.js +5 -5
  153. data/app/assets/javascripts/Shaders/BillboardCollectionVS.js +5 -5
  154. data/app/assets/javascripts/Shaders/Builtin/Constants/degreesPerRadian.glsl +16 -0
  155. data/app/assets/javascripts/Shaders/Builtin/Constants/degreesPerRadian.js +7 -0
  156. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon1.glsl +7 -0
  157. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon1.js +7 -0
  158. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon2.glsl +7 -0
  159. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon2.js +7 -0
  160. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon3.glsl +7 -0
  161. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon3.js +7 -0
  162. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon4.glsl +7 -0
  163. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon4.js +7 -0
  164. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon5.glsl +7 -0
  165. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon5.js +7 -0
  166. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon6.glsl +7 -0
  167. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon6.js +7 -0
  168. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon7.glsl +7 -0
  169. data/app/assets/javascripts/Shaders/Builtin/Constants/epsilon7.js +7 -0
  170. data/app/assets/javascripts/Shaders/Builtin/Constants/infinity.glsl +7 -0
  171. data/app/assets/javascripts/Shaders/Builtin/Constants/infinity.js +7 -0
  172. data/app/assets/javascripts/Shaders/Builtin/Constants/oneOverPi.glsl +16 -0
  173. data/app/assets/javascripts/Shaders/Builtin/Constants/oneOverPi.js +7 -0
  174. data/app/assets/javascripts/Shaders/Builtin/Constants/oneOverTwoPi.glsl +16 -0
  175. data/app/assets/javascripts/Shaders/Builtin/Constants/oneOverTwoPi.js +7 -0
  176. data/app/assets/javascripts/Shaders/Builtin/Constants/pi.glsl +16 -0
  177. data/app/assets/javascripts/Shaders/Builtin/Constants/pi.js +7 -0
  178. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverFour.glsl +16 -0
  179. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverFour.js +7 -0
  180. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverSix.glsl +16 -0
  181. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverSix.js +7 -0
  182. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverThree.glsl +16 -0
  183. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverThree.js +7 -0
  184. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverTwo.glsl +16 -0
  185. data/app/assets/javascripts/Shaders/Builtin/Constants/piOverTwo.js +7 -0
  186. data/app/assets/javascripts/Shaders/Builtin/Constants/radiansPerDegree.glsl +16 -0
  187. data/app/assets/javascripts/Shaders/Builtin/Constants/radiansPerDegree.js +7 -0
  188. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneMode2D.glsl +11 -0
  189. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneMode2D.js +7 -0
  190. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneMode3D.glsl +11 -0
  191. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneMode3D.js +7 -0
  192. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneModeColumbusView.glsl +11 -0
  193. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneModeColumbusView.js +7 -0
  194. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneModeMorphing.glsl +11 -0
  195. data/app/assets/javascripts/Shaders/Builtin/Constants/sceneModeMorphing.js +7 -0
  196. data/app/assets/javascripts/Shaders/Builtin/Constants/solarRadius.glsl +13 -0
  197. data/app/assets/javascripts/Shaders/Builtin/Constants/solarRadius.js +7 -0
  198. data/app/assets/javascripts/Shaders/Builtin/Constants/threePiOver2.glsl +16 -0
  199. data/app/assets/javascripts/Shaders/Builtin/Constants/threePiOver2.js +7 -0
  200. data/app/assets/javascripts/Shaders/Builtin/Constants/twoPi.glsl +16 -0
  201. data/app/assets/javascripts/Shaders/Builtin/Constants/twoPi.js +7 -0
  202. data/app/assets/javascripts/Shaders/Builtin/Constants/webMercatorMaxLatitude.glsl +16 -0
  203. data/app/assets/javascripts/Shaders/Builtin/Constants/webMercatorMaxLatitude.js +7 -0
  204. data/app/assets/javascripts/Shaders/Builtin/CzmBuiltins.js +136 -0
  205. data/app/assets/javascripts/Shaders/Builtin/Functions/RGBToXYZ.js +5 -5
  206. data/app/assets/javascripts/Shaders/Builtin/Functions/XYZToRGB.js +5 -5
  207. data/app/assets/javascripts/Shaders/Builtin/Functions/antialias.js +5 -5
  208. data/app/assets/javascripts/Shaders/Builtin/Functions/cellular.js +5 -5
  209. data/app/assets/javascripts/Shaders/Builtin/Functions/columbusViewMorph.js +5 -5
  210. data/app/assets/javascripts/Shaders/Builtin/Functions/computePosition.js +5 -5
  211. data/app/assets/javascripts/Shaders/Builtin/Functions/eastNorthUpToEyeCoordinates.js +5 -5
  212. data/app/assets/javascripts/Shaders/Builtin/Functions/ellipsoidContainsPoint.js +5 -5
  213. data/app/assets/javascripts/Shaders/Builtin/Functions/ellipsoidNew.js +5 -5
  214. data/app/assets/javascripts/Shaders/Builtin/Functions/ellipsoidWgs84TextureCoordinates.js +5 -5
  215. data/app/assets/javascripts/Shaders/Builtin/Functions/equalsEpsilon.js +5 -5
  216. data/app/assets/javascripts/Shaders/Builtin/Functions/eyeOffset.js +5 -5
  217. data/app/assets/javascripts/Shaders/Builtin/Functions/eyeToWindowCoordinates.js +5 -5
  218. data/app/assets/javascripts/Shaders/Builtin/Functions/geodeticSurfaceNormal.js +5 -5
  219. data/app/assets/javascripts/Shaders/Builtin/Functions/getDefaultMaterial.js +5 -5
  220. data/app/assets/javascripts/Shaders/Builtin/Functions/getLambertDiffuse.glsl +22 -0
  221. data/app/assets/javascripts/Shaders/Builtin/Functions/getLambertDiffuse.js +10 -0
  222. data/app/assets/javascripts/Shaders/Builtin/Functions/getSpecular.glsl +26 -0
  223. data/app/assets/javascripts/Shaders/Builtin/Functions/getSpecular.js +12 -0
  224. data/app/assets/javascripts/Shaders/Builtin/Functions/getWaterNoise.js +5 -5
  225. data/app/assets/javascripts/Shaders/Builtin/Functions/getWgs84EllipsoidEC.js +5 -5
  226. data/app/assets/javascripts/Shaders/Builtin/Functions/hue.js +5 -5
  227. data/app/assets/javascripts/Shaders/Builtin/Functions/isEmpty.js +5 -5
  228. data/app/assets/javascripts/Shaders/Builtin/Functions/isFull.js +5 -5
  229. data/app/assets/javascripts/Shaders/Builtin/Functions/latitudeToWebMercatorFraction.js +5 -5
  230. data/app/assets/javascripts/Shaders/Builtin/Functions/luminance.js +5 -5
  231. data/app/assets/javascripts/Shaders/Builtin/Functions/modelToWindowCoordinates.js +5 -5
  232. data/app/assets/javascripts/Shaders/Builtin/Functions/multiplyWithColorBalance.js +5 -5
  233. data/app/assets/javascripts/Shaders/Builtin/Functions/phong.glsl +6 -18
  234. data/app/assets/javascripts/Shaders/Builtin/Functions/phong.js +10 -20
  235. data/app/assets/javascripts/Shaders/Builtin/Functions/pointAlongRay.js +5 -5
  236. data/app/assets/javascripts/Shaders/Builtin/Functions/rayEllipsoidIntersectionInterval.js +5 -5
  237. data/app/assets/javascripts/Shaders/Builtin/Functions/saturation.js +5 -5
  238. data/app/assets/javascripts/Shaders/Builtin/Functions/snoise.js +5 -5
  239. data/app/assets/javascripts/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.js +5 -5
  240. data/app/assets/javascripts/Shaders/Builtin/Functions/translateRelativeToEye.js +5 -5
  241. data/app/assets/javascripts/Shaders/Builtin/Functions/transpose.js +5 -5
  242. data/app/assets/javascripts/Shaders/Builtin/Functions/windowToEyeCoordinates.js +5 -5
  243. data/app/assets/javascripts/Shaders/Builtin/Structs/ellipsoid.glsl +12 -0
  244. data/app/assets/javascripts/Shaders/Builtin/Structs/ellipsoid.js +13 -0
  245. data/app/assets/javascripts/Shaders/Builtin/Structs/material.glsl +22 -0
  246. data/app/assets/javascripts/Shaders/Builtin/Structs/material.js +15 -0
  247. data/app/assets/javascripts/Shaders/Builtin/Structs/materialInput.glsl +22 -0
  248. data/app/assets/javascripts/Shaders/Builtin/Structs/materialInput.js +15 -0
  249. data/app/assets/javascripts/Shaders/Builtin/Structs/ray.glsl +11 -0
  250. data/app/assets/javascripts/Shaders/Builtin/Structs/ray.js +11 -0
  251. data/app/assets/javascripts/Shaders/Builtin/Structs/raySegment.glsl +27 -0
  252. data/app/assets/javascripts/Shaders/Builtin/Structs/raySegment.js +13 -0
  253. data/app/assets/javascripts/Shaders/CentralBodyFS.glsl +21 -16
  254. data/app/assets/javascripts/Shaders/CentralBodyFS.js +19 -17
  255. data/app/assets/javascripts/Shaders/CentralBodyFSDepth.js +5 -5
  256. data/app/assets/javascripts/Shaders/CentralBodyFSPole.js +5 -5
  257. data/app/assets/javascripts/Shaders/CentralBodyVS.glsl +1 -1
  258. data/app/assets/javascripts/Shaders/CentralBodyVS.js +5 -5
  259. data/app/assets/javascripts/Shaders/CentralBodyVSDepth.js +5 -5
  260. data/app/assets/javascripts/Shaders/CentralBodyVSPole.js +5 -5
  261. data/app/assets/javascripts/Shaders/CustomSensorVolumeFS.js +5 -5
  262. data/app/assets/javascripts/Shaders/CustomSensorVolumeVS.js +5 -5
  263. data/app/assets/javascripts/Shaders/EllipsoidFS.js +5 -5
  264. data/app/assets/javascripts/Shaders/EllipsoidVS.js +5 -5
  265. data/app/assets/javascripts/Shaders/Materials/AsphaltMaterial.js +5 -5
  266. data/app/assets/javascripts/Shaders/Materials/BlobMaterial.js +5 -5
  267. data/app/assets/javascripts/Shaders/Materials/BrickMaterial.js +5 -5
  268. data/app/assets/javascripts/Shaders/Materials/BumpMapMaterial.js +5 -5
  269. data/app/assets/javascripts/Shaders/Materials/CementMaterial.js +5 -5
  270. data/app/assets/javascripts/Shaders/Materials/CheckerboardMaterial.js +5 -5
  271. data/app/assets/javascripts/Shaders/Materials/DotMaterial.js +5 -5
  272. data/app/assets/javascripts/Shaders/Materials/ErosionMaterial.js +5 -5
  273. data/app/assets/javascripts/Shaders/Materials/FacetMaterial.js +5 -5
  274. data/app/assets/javascripts/Shaders/Materials/FadeMaterial.js +5 -5
  275. data/app/assets/javascripts/Shaders/Materials/FresnelMaterial.js +5 -5
  276. data/app/assets/javascripts/Shaders/Materials/GrassMaterial.js +5 -5
  277. data/app/assets/javascripts/Shaders/Materials/GridMaterial.js +5 -5
  278. data/app/assets/javascripts/Shaders/Materials/NormalMapMaterial.js +5 -5
  279. data/app/assets/javascripts/Shaders/Materials/PolylineArrowMaterial.js +5 -5
  280. data/app/assets/javascripts/Shaders/Materials/PolylineGlowMaterial.js +5 -5
  281. data/app/assets/javascripts/Shaders/Materials/PolylineOutlineMaterial.js +5 -5
  282. data/app/assets/javascripts/Shaders/Materials/ReflectionMaterial.js +5 -5
  283. data/app/assets/javascripts/Shaders/Materials/RefractionMaterial.js +5 -5
  284. data/app/assets/javascripts/Shaders/Materials/RimLightingMaterial.js +5 -5
  285. data/app/assets/javascripts/Shaders/Materials/StripeMaterial.js +5 -5
  286. data/app/assets/javascripts/Shaders/Materials/TieDyeMaterial.js +5 -5
  287. data/app/assets/javascripts/Shaders/Materials/Water.js +5 -5
  288. data/app/assets/javascripts/Shaders/Materials/WoodMaterial.js +5 -5
  289. data/app/assets/javascripts/Shaders/PolylineCommon.glsl +93 -0
  290. data/app/assets/javascripts/Shaders/PolylineCommon.js +79 -0
  291. data/app/assets/javascripts/Shaders/PolylineFS.glsl +4 -4
  292. data/app/assets/javascripts/Shaders/PolylineFS.js +8 -8
  293. data/app/assets/javascripts/Shaders/PolylineVS.glsl +3 -94
  294. data/app/assets/javascripts/Shaders/PolylineVS.js +8 -79
  295. data/app/assets/javascripts/Shaders/PostProcessFilters/AdditiveBlend.js +5 -5
  296. data/app/assets/javascripts/Shaders/PostProcessFilters/BrightPass.js +5 -5
  297. data/app/assets/javascripts/Shaders/PostProcessFilters/GaussianBlur1D.js +5 -5
  298. data/app/assets/javascripts/Shaders/PostProcessFilters/PassThrough.js +5 -5
  299. data/app/assets/javascripts/Shaders/ReprojectWebMercatorFS.js +5 -5
  300. data/app/assets/javascripts/Shaders/ReprojectWebMercatorVS.js +5 -5
  301. data/app/assets/javascripts/Shaders/SensorVolume.js +5 -5
  302. data/app/assets/javascripts/Shaders/SkyAtmosphereFS.js +5 -5
  303. data/app/assets/javascripts/Shaders/SkyAtmosphereVS.js +5 -5
  304. data/app/assets/javascripts/Shaders/SkyBoxFS.js +5 -5
  305. data/app/assets/javascripts/Shaders/SkyBoxVS.js +5 -5
  306. data/app/assets/javascripts/Shaders/SunFS.glsl +3 -6
  307. data/app/assets/javascripts/Shaders/SunFS.js +7 -9
  308. data/app/assets/javascripts/Shaders/SunTextureFS.glsl +56 -0
  309. data/app/assets/javascripts/Shaders/SunTextureFS.js +38 -0
  310. data/app/assets/javascripts/Shaders/SunVS.glsl +3 -3
  311. data/app/assets/javascripts/Shaders/SunVS.js +7 -8
  312. data/app/assets/javascripts/Shaders/ViewportQuadFS.js +5 -5
  313. data/app/assets/javascripts/Shaders/ViewportQuadVS.js +5 -5
  314. data/app/assets/javascripts/Widgets/Animation/Animation.js +1 -1
  315. data/app/assets/javascripts/Widgets/CesiumWidget/CesiumWidget.js +22 -2
  316. data/app/assets/javascripts/Widgets/HomeButton/HomeButtonViewModel.js +6 -6
  317. data/app/assets/javascripts/Widgets/Timeline/Timeline.css +1 -2
  318. data/app/assets/javascripts/Widgets/Timeline/Timeline.js +4 -0
  319. data/app/assets/javascripts/Widgets/Viewer/Viewer.js +1 -1
  320. data/app/assets/javascripts/Widgets/Viewer/viewerDynamicObjectMixin.js +31 -10
  321. data/app/assets/javascripts/Workers/createCorridorOutlineGeometry.js +23 -0
  322. data/app/assets/javascripts/Workers/createPolylineGeometry.js +20 -0
  323. data/lib/cesium/version.rb +1 -1
  324. data/lib/tasks/cesium_tasks.rake +5 -5
  325. data/test/dummy/log/development.log +11486 -0
  326. data/test/dummy/tmp/cache/assets/B99/0B0/sprockets%2F4723632036683061b3298399d52922e7 +0 -0
  327. data/test/dummy/tmp/cache/assets/BAF/370/sprockets%2F799a74598087f7719313562f44828061 +0 -0
  328. data/test/dummy/tmp/cache/assets/BEC/140/sprockets%2F543679da044b10754151b23b36875755 +0 -0
  329. data/test/dummy/tmp/cache/assets/BF5/780/sprockets%2F4972cb4661342668d3594133711f29d2 +0 -0
  330. data/test/dummy/tmp/cache/assets/BF5/FE0/sprockets%2F368a904259d19129785a545b0f620238 +0 -0
  331. data/test/dummy/tmp/cache/assets/BF8/BC0/sprockets%2F1982805b53487d15554f20955019b8c4 +0 -0
  332. data/test/dummy/tmp/cache/assets/BF9/AE0/sprockets%2F9368350e9f18f633d29435164053903b +0 -0
  333. data/test/dummy/tmp/cache/assets/C01/8D0/sprockets%2F2ec425249233274aa0b026b451230672 +0 -0
  334. data/test/dummy/tmp/cache/assets/C02/060/sprockets%2F1d0bc0120a24460771534a6066a19474 +0 -0
  335. data/test/dummy/tmp/cache/assets/C07/150/sprockets%2F1b420211d4602737f80569030633dbf0 +0 -0
  336. data/test/dummy/tmp/cache/assets/C07/640/sprockets%2F7111e317b455fb168332b5603123083a +0 -0
  337. data/test/dummy/tmp/cache/assets/C12/030/sprockets%2Fbd84b00d783150a219825433401a7946 +0 -0
  338. data/test/dummy/tmp/cache/assets/C12/F80/sprockets%2F9356a00b5159422da062270884e23a29 +0 -0
  339. data/test/dummy/tmp/cache/assets/C16/BD0/sprockets%2Fd2b48e35108f523114643b3d53706825 +0 -0
  340. data/test/dummy/tmp/cache/assets/C1E/5C0/sprockets%2F2277f02712e633f06102744168f8f35d +0 -0
  341. data/test/dummy/tmp/cache/assets/C1F/050/sprockets%2F53a947727b383e4660419f08d91a1032 +0 -0
  342. data/test/dummy/tmp/cache/assets/C1F/AD0/sprockets%2F663e19c50940941591c806f0709b211f +0 -0
  343. data/test/dummy/tmp/cache/assets/C1F/BE0/sprockets%2F9ff195723d3a539023420682a372f561 +0 -0
  344. data/test/dummy/tmp/cache/assets/C21/2F0/sprockets%2F542b776b2358128506142733e2f7bc94 +0 -0
  345. data/test/dummy/tmp/cache/assets/C23/080/sprockets%2F7953320c0848d5564133365a6c3d728d +0 -0
  346. data/test/dummy/tmp/cache/assets/C26/280/sprockets%2F9860ce60e03164c35b8039e072376784 +0 -0
  347. data/test/dummy/tmp/cache/assets/C26/5B0/sprockets%2F55b830337d0462859671b7e5447ed430 +0 -0
  348. data/test/dummy/tmp/cache/assets/C26/6B0/sprockets%2F3f60c79508688afb054131884428613b +0 -0
  349. data/test/dummy/tmp/cache/assets/C27/CA0/sprockets%2F4c81f5363088374007d69607197dbf11 +0 -0
  350. data/test/dummy/tmp/cache/assets/C27/DA0/sprockets%2Fe49200d07769d24f54f721d890142818 +0 -0
  351. data/test/dummy/tmp/cache/assets/C29/0D0/sprockets%2F78f4925384f00974930f43dec1006924 +0 -0
  352. data/test/dummy/tmp/cache/assets/C29/170/sprockets%2F02826284e867237657439d3ce475a0b3 +0 -0
  353. data/test/dummy/tmp/cache/assets/C2A/3B0/sprockets%2F5386784b88d5e106865d52d3161651c2 +0 -0
  354. data/test/dummy/tmp/cache/assets/C2D/8E0/sprockets%2F64b8f949c8611a847315410698207fc3 +0 -0
  355. data/test/dummy/tmp/cache/assets/C31/9B0/sprockets%2F91243839e47880702db90f07f449d509 +0 -0
  356. data/test/dummy/tmp/cache/assets/C31/9E0/sprockets%2F3e25990dc848275307160f9e93184d54 +0 -0
  357. data/test/dummy/tmp/cache/assets/C31/F10/sprockets%2Fda8926e44189139968b640029b873d14 +0 -0
  358. data/test/dummy/tmp/cache/assets/C37/EB0/sprockets%2F410166e528f769c35999d061f6552d57 +0 -0
  359. data/test/dummy/tmp/cache/assets/C39/FD0/sprockets%2F40341e47b1219c54b1701d04a96a6192 +0 -0
  360. data/test/dummy/tmp/cache/assets/C40/040/sprockets%2F755e3952d9331b86782d4a7478a59299 +0 -0
  361. data/test/dummy/tmp/cache/assets/C40/FC0/sprockets%2F98f5c2a12b705912dd240327119152e3 +0 -0
  362. data/test/dummy/tmp/cache/assets/C41/C50/sprockets%2F97252d94663e85679cfc447910e79622 +0 -0
  363. data/test/dummy/tmp/cache/assets/C42/440/sprockets%2F1b618402da380cb405d971458a874033 +0 -0
  364. data/test/dummy/tmp/cache/assets/C44/870/sprockets%2Fc7607e52811e723312c83d096c611c32 +0 -0
  365. data/test/dummy/tmp/cache/assets/C46/770/sprockets%2F9b6c82d0454ab5ba8727173860060324 +0 -0
  366. data/test/dummy/tmp/cache/assets/C46/E60/sprockets%2F151028e967f13248ca6121c9407242cf +0 -0
  367. data/test/dummy/tmp/cache/assets/C48/040/sprockets%2F5389957e1b18210c3e842dd07148013a +0 -0
  368. data/test/dummy/tmp/cache/assets/C48/360/sprockets%2Fc966013651008025255f5b53b1d63f9e +0 -0
  369. data/test/dummy/tmp/cache/assets/C48/B80/sprockets%2F977a1612cd7012456e49684e00f12b15 +0 -0
  370. data/test/dummy/tmp/cache/assets/C49/AB0/sprockets%2F03711d5f17161228368251a5ff64a4f6 +0 -0
  371. data/test/dummy/tmp/cache/assets/C4A/020/sprockets%2F162d504e77459f0304b964139300cfe3 +0 -0
  372. data/test/dummy/tmp/cache/assets/C4A/2B0/sprockets%2F821c1d08482a9b936b661a56444551b3 +0 -0
  373. data/test/dummy/tmp/cache/assets/C4A/6D0/sprockets%2F367ae9689887469477258e3717a81d7a +0 -0
  374. data/test/dummy/tmp/cache/assets/C4B/100/sprockets%2F68d50de95c6555c15507523610f4c240 +0 -0
  375. data/test/dummy/tmp/cache/assets/C4B/890/sprockets%2F6e334463d45482c1421353046a96fad7 +0 -0
  376. data/test/dummy/tmp/cache/assets/C4D/960/sprockets%2Fb000576886efd55d3234013285580e8a +0 -0
  377. data/test/dummy/tmp/cache/assets/C51/5B0/sprockets%2F8a5118e541fa9727e263038a13796b15 +0 -0
  378. data/test/dummy/tmp/cache/assets/C52/2E0/sprockets%2Fa9783d991ed60019261a3651e219b194 +0 -0
  379. data/test/dummy/tmp/cache/assets/C52/CE0/sprockets%2F6a90b1d4e55589bc930a916842407308 +0 -0
  380. data/test/dummy/tmp/cache/assets/C53/040/sprockets%2F52411d26c4863636c7ae5b5090690f94 +0 -0
  381. data/test/dummy/tmp/cache/assets/C53/260/sprockets%2F94c148329f3031f18de416393235b88a +0 -0
  382. data/test/dummy/tmp/cache/assets/C53/660/sprockets%2F536301e85c8568fc601c0264d34935d6 +0 -0
  383. data/test/dummy/tmp/cache/assets/C54/B80/sprockets%2F3d600e58a215f47e00d92e5697298233 +0 -0
  384. data/test/dummy/tmp/cache/assets/C55/050/sprockets%2Fce172473f4850e2954423d79a57e0082 +0 -0
  385. data/test/dummy/tmp/cache/assets/C55/3F0/sprockets%2F8253261b673918af64a81c5911439b8b +0 -0
  386. data/test/dummy/tmp/cache/assets/C55/F00/sprockets%2Fa01e48539b20b57888127a675398ed10 +0 -0
  387. data/test/dummy/tmp/cache/assets/C56/5C0/sprockets%2F3383988301b0378ef1127572a59ee07d +0 -0
  388. data/test/dummy/tmp/cache/assets/C57/6C0/sprockets%2F90f201ca5864d9979082316f5f80a631 +0 -0
  389. data/test/dummy/tmp/cache/assets/C57/D10/sprockets%2F784e21cb5b634a598629115ef4685213 +0 -0
  390. data/test/dummy/tmp/cache/assets/C59/380/sprockets%2F22f3dc721a20019d400095053f1fb410 +0 -0
  391. data/test/dummy/tmp/cache/assets/C59/810/sprockets%2Fc37183f61d9511d324983656cd9375a1 +0 -0
  392. data/test/dummy/tmp/cache/assets/C5A/F10/sprockets%2F89244f33142747095fc49143708bf7ca +0 -0
  393. data/test/dummy/tmp/cache/assets/C5C/E20/sprockets%2F41c3676b5a839a9210713a976809ed76 +0 -0
  394. data/test/dummy/tmp/cache/assets/C5D/C90/sprockets%2Fc95a68422035a73f646f74e74767134c +0 -0
  395. data/test/dummy/tmp/cache/assets/C5E/0C0/sprockets%2F0700cd92993b55978435e474c733c9d0 +0 -0
  396. data/test/dummy/tmp/cache/assets/C5F/BB0/sprockets%2F4061427d3babc120be37a18006970251 +0 -0
  397. data/test/dummy/tmp/cache/assets/C60/1B0/sprockets%2Faf8b450372646883cc98c1478472a744 +0 -0
  398. data/test/dummy/tmp/cache/assets/C61/2F0/sprockets%2Fe7f511982b4799474ab391f714d39630 +0 -0
  399. data/test/dummy/tmp/cache/assets/C61/D10/sprockets%2F99f1eb6583e8c569a6070750064d0649 +0 -0
  400. data/test/dummy/tmp/cache/assets/C62/FC0/sprockets%2F779572f82e84f06a03543f53f9b68340 +0 -0
  401. data/test/dummy/tmp/cache/assets/C63/070/sprockets%2F8e770283d268526610e99264922dce9b +0 -0
  402. data/test/dummy/tmp/cache/assets/C64/730/sprockets%2F78fd706ba991f21a399070866616c297 +0 -0
  403. data/test/dummy/tmp/cache/assets/C65/0E0/sprockets%2F8303e4555c14f5f62cd2979665f50578 +0 -0
  404. data/test/dummy/tmp/cache/assets/C67/1C0/sprockets%2F84ad36029c8b68580e409459ec917845 +0 -0
  405. data/test/dummy/tmp/cache/assets/C67/E40/sprockets%2F1d740719dc66e827206004a2d1d130e0 +0 -0
  406. data/test/dummy/tmp/cache/assets/C69/8F0/sprockets%2F57b3e8425d39829d9046818773a7e4c4 +0 -0
  407. data/test/dummy/tmp/cache/assets/C69/9D0/sprockets%2Fe23697506159895308f471dbfe79b049 +0 -0
  408. data/test/dummy/tmp/cache/assets/C69/DC0/sprockets%2F99a7cf31e7d92983436407940c83e384 +0 -0
  409. data/test/dummy/tmp/cache/assets/C6C/C90/sprockets%2Fad7947b2492467a62388859219a92de9 +0 -0
  410. data/test/dummy/tmp/cache/assets/C6C/E20/sprockets%2Fa47597474b5a3359d9933b9099f34b84 +0 -0
  411. data/test/dummy/tmp/cache/assets/C6C/E30/sprockets%2F566fe333c6901634240a26ebda413044 +0 -0
  412. data/test/dummy/tmp/cache/assets/C6D/AC0/sprockets%2Fa1344c280c4d1518b6c15c357543247a +0 -0
  413. data/test/dummy/tmp/cache/assets/C6F/BB0/sprockets%2F402487bc510925334deb804af12a8614 +0 -0
  414. data/test/dummy/tmp/cache/assets/C6F/F50/sprockets%2F2cb3477a83350ba2020cd38803929a55 +0 -0
  415. data/test/dummy/tmp/cache/assets/C70/600/sprockets%2Fa190260891222cefb27e01037c26e592 +0 -0
  416. data/test/dummy/tmp/cache/assets/C70/D70/sprockets%2F2e438313a1edf3a1538c2348911a3194 +0 -0
  417. data/test/dummy/tmp/cache/assets/C70/FD0/sprockets%2F55b154db32ed8c025d6902063604346c +0 -0
  418. data/test/dummy/tmp/cache/assets/C71/120/sprockets%2F50a1192c409257f2f7c2ab2a32609745 +0 -0
  419. data/test/dummy/tmp/cache/assets/C73/0F0/sprockets%2F8a6a50d9b866140c720b6a48307c4116 +0 -0
  420. data/test/dummy/tmp/cache/assets/C73/A90/sprockets%2F1a0dcd67663309397c50716dd2304a43 +0 -0
  421. data/test/dummy/tmp/cache/assets/C75/A30/sprockets%2F70433b035563751f91da2c42849c3eb1 +0 -0
  422. data/test/dummy/tmp/cache/assets/C76/020/sprockets%2F93a743240510b9fc229172560fe0e5d4 +0 -0
  423. data/test/dummy/tmp/cache/assets/C76/620/sprockets%2F632c9212c090a66b2278ff03d1037a98 +0 -0
  424. data/test/dummy/tmp/cache/assets/C76/7C0/sprockets%2Fc8a40132f840235629f214e0f0e4097f +0 -0
  425. data/test/dummy/tmp/cache/assets/C76/B20/sprockets%2F00e497b5db44cc01854869442bc31091 +0 -0
  426. data/test/dummy/tmp/cache/assets/C76/F10/sprockets%2F536e031c5d9a257b602d38f8711480a2 +0 -0
  427. data/test/dummy/tmp/cache/assets/C79/2A0/sprockets%2Fdbff93f30738954d250021029a8705a3 +0 -0
  428. data/test/dummy/tmp/cache/assets/C79/CA0/sprockets%2F6c457040c003bb7fe76cd91327372572 +0 -0
  429. data/test/dummy/tmp/cache/assets/C7A/EC0/sprockets%2F4f95941b98817b478774b7399c95a6f2 +0 -0
  430. data/test/dummy/tmp/cache/assets/C7C/7C0/sprockets%2F951d4a02d8b2ce148765e618081a8036 +0 -0
  431. data/test/dummy/tmp/cache/assets/C7C/810/sprockets%2F8c911307ea50fb1f75e855507300e780 +0 -0
  432. data/test/dummy/tmp/cache/assets/C7D/EF0/sprockets%2F2750eae96e23fa7136c91111e5852275 +0 -0
  433. data/test/dummy/tmp/cache/assets/C7E/200/sprockets%2F21b0b364a5b1018b18f894c6e8655682 +0 -0
  434. data/test/dummy/tmp/cache/assets/C7E/AF0/sprockets%2Fd0089a94f336126088a4c1e44e5b9423 +0 -0
  435. data/test/dummy/tmp/cache/assets/C7E/EA0/sprockets%2F2504a119ab66f79d8d296032e957a023 +0 -0
  436. data/test/dummy/tmp/cache/assets/C80/150/sprockets%2F0d3881005b0646df783d5c24683d34f5 +0 -0
  437. data/test/dummy/tmp/cache/assets/C80/350/sprockets%2F74b45455ed56100542e4c59359e052cf +0 -0
  438. data/test/dummy/tmp/cache/assets/C80/780/sprockets%2F49930c35001a30c38745b89a6a86cf74 +0 -0
  439. data/test/dummy/tmp/cache/assets/C81/A90/sprockets%2F996b636b1494756317233a4582b3caae +0 -0
  440. data/test/dummy/tmp/cache/assets/C82/040/sprockets%2Fe0a40c66c75956304aa9b9908197710c +0 -0
  441. data/test/dummy/tmp/cache/assets/C82/060/sprockets%2Fb043f48276a50489714f9ec04525e26a +0 -0
  442. data/test/dummy/tmp/cache/assets/C82/580/sprockets%2F8118f4526088ba8fd441f20317475d6b +0 -0
  443. data/test/dummy/tmp/cache/assets/C82/AA0/sprockets%2Fd83006c52345d7fe51216f1e577a8185 +0 -0
  444. data/test/dummy/tmp/cache/assets/C82/F80/sprockets%2F324c35a8c98608b49e564734245aab52 +0 -0
  445. data/test/dummy/tmp/cache/assets/C83/A50/sprockets%2F26b151f7490286ff7059ff9a411e1027 +0 -0
  446. data/test/dummy/tmp/cache/assets/C83/B70/sprockets%2Fa703782e55371373dad6667a7f25173b +0 -0
  447. data/test/dummy/tmp/cache/assets/C84/A30/sprockets%2F4867b0b9b390b58a539162663f95a11d +0 -0
  448. data/test/dummy/tmp/cache/assets/C84/E00/sprockets%2F49d13d786c17ba7650b374646455a6b3 +0 -0
  449. data/test/dummy/tmp/cache/assets/C84/F20/sprockets%2F083e68a51997c13d32841a8f90dd7123 +0 -0
  450. data/test/dummy/tmp/cache/assets/C85/310/sprockets%2Fc638d86c720815e5b635e0a3646e2186 +0 -0
  451. data/test/dummy/tmp/cache/assets/C85/860/sprockets%2F1128e045516f9716afd74c1e59a84129 +0 -0
  452. data/test/dummy/tmp/cache/assets/C85/A90/sprockets%2Fc1f8ee195823c02e7b7c623493141937 +0 -0
  453. data/test/dummy/tmp/cache/assets/C86/030/sprockets%2F0ad25c896165036167b94387675bcdd1 +0 -0
  454. data/test/dummy/tmp/cache/assets/C86/160/sprockets%2F170cebf5c63267b58657ac9519502158 +0 -0
  455. data/test/dummy/tmp/cache/assets/C86/1D0/sprockets%2F27b505354597df6d366bbc531082e198 +0 -0
  456. data/test/dummy/tmp/cache/assets/C86/230/sprockets%2F4454c38e9e8bb905a7b1351b76394830 +0 -0
  457. data/test/dummy/tmp/cache/assets/C87/1B0/sprockets%2F58524f16545fa54ea39c3c1270d06799 +0 -0
  458. data/test/dummy/tmp/cache/assets/C88/3F0/sprockets%2Fa516de7192d1e35894787e3dd5009161 +0 -0
  459. data/test/dummy/tmp/cache/assets/C88/400/sprockets%2F9454b598601cfa56142892fc3f11e267 +0 -0
  460. data/test/dummy/tmp/cache/assets/C88/500/sprockets%2F4922887ab2a8fe01664747b36094b17f +0 -0
  461. data/test/dummy/tmp/cache/assets/C88/E50/sprockets%2F02cd2a2814dd575e95685636198ab572 +0 -0
  462. data/test/dummy/tmp/cache/assets/C89/5B0/sprockets%2Ff09892888c3240bc4b227f136608eb66 +0 -0
  463. data/test/dummy/tmp/cache/assets/C89/C90/sprockets%2Fb57417bcd9197c44286f14650e552b84 +0 -0
  464. data/test/dummy/tmp/cache/assets/C89/EF0/sprockets%2Fd29c68a07b9e63713834bc7543a53683 +0 -0
  465. data/test/dummy/tmp/cache/assets/C8A/3A0/sprockets%2F4fa70475e9967491aa904382d57f0a70 +0 -0
  466. data/test/dummy/tmp/cache/assets/C8A/B60/sprockets%2F91211f962c595bd97d4236eb07e99023 +0 -0
  467. data/test/dummy/tmp/cache/assets/C8B/000/sprockets%2Ff973959272a2474ab3fd8909117fb403 +0 -0
  468. data/test/dummy/tmp/cache/assets/C8B/0F0/sprockets%2F3317c35ce7597681091ac91985d08bb5 +0 -0
  469. data/test/dummy/tmp/cache/assets/C8B/700/sprockets%2F733de337382f6086545288fc6a6fa611 +0 -0
  470. data/test/dummy/tmp/cache/assets/C8B/A30/sprockets%2Fe20153c26552232703d0f4a5a60b10ed +0 -0
  471. data/test/dummy/tmp/cache/assets/C8C/A10/sprockets%2F530e507cce6d8e38083e47883140890f +0 -0
  472. data/test/dummy/tmp/cache/assets/C8C/ED0/sprockets%2F43ea33764c6de9a90766696891d1421a +0 -0
  473. data/test/dummy/tmp/cache/assets/C8D/C30/sprockets%2Fb8b7a83d530275d303f1769879f60f34 +0 -0
  474. data/test/dummy/tmp/cache/assets/C8D/FC0/sprockets%2Fab1b1b654d968822069892e844f5244f +0 -0
  475. data/test/dummy/tmp/cache/assets/C8E/1A0/sprockets%2F7937090f77385164f68c0ee252b26be5 +0 -0
  476. data/test/dummy/tmp/cache/assets/C8E/1B0/sprockets%2F3309cd849788a2b736f12369ad4e4851 +0 -0
  477. data/test/dummy/tmp/cache/assets/C8E/450/sprockets%2F5fa08396255656fa8151e3796bf902a7 +0 -0
  478. data/test/dummy/tmp/cache/assets/C8E/810/sprockets%2F3e40187995c1803db884c434d95ca657 +0 -0
  479. data/test/dummy/tmp/cache/assets/C8E/BA0/sprockets%2F08f8e8332b29f19e64082789d34b6e10 +0 -0
  480. data/test/dummy/tmp/cache/assets/C8E/D10/sprockets%2F925a7d498e00228a891b7835bf3787b1 +0 -0
  481. data/test/dummy/tmp/cache/assets/C8E/E40/sprockets%2F96aaf9af5e7906347880902610773bc5 +0 -0
  482. data/test/dummy/tmp/cache/assets/C8F/030/sprockets%2F6e7f990a153258258b23f435e85b583d +0 -0
  483. data/test/dummy/tmp/cache/assets/C8F/370/sprockets%2Ff794170ec844d49b57216a088c0297d7 +0 -0
  484. data/test/dummy/tmp/cache/assets/C90/760/sprockets%2F01998bca7e3860b668f2999f405411d4 +0 -0
  485. data/test/dummy/tmp/cache/assets/C90/7C0/sprockets%2Fa18129a474f49984c750c79ac94e5261 +0 -0
  486. data/test/dummy/tmp/cache/assets/C90/DC0/sprockets%2Fd540859f390d384194ad013e88a099f7 +0 -0
  487. data/test/dummy/tmp/cache/assets/C91/730/sprockets%2F78e7a8fbde842a8563457623f5388011 +0 -0
  488. data/test/dummy/tmp/cache/assets/C91/F00/sprockets%2F0f611f4f95811990472ff1b6f95383d5 +0 -0
  489. data/test/dummy/tmp/cache/assets/C92/E60/sprockets%2Fa80a146215a040d03e312a796c0b95f2 +0 -0
  490. data/test/dummy/tmp/cache/assets/C93/F70/sprockets%2F65f6452a7e17925ac0894c3e1858874c +0 -0
  491. data/test/dummy/tmp/cache/assets/C94/200/sprockets%2F8dae686ee6012f59a55568f381753237 +0 -0
  492. data/test/dummy/tmp/cache/assets/C94/230/sprockets%2Ff1065a9c342c30d071c501513a608e7a +0 -0
  493. data/test/dummy/tmp/cache/assets/C94/640/sprockets%2F030e3637e18304c5882dc23aa601da13 +0 -0
  494. data/test/dummy/tmp/cache/assets/C94/700/sprockets%2F775c775cc514476ef935216e1f58a582 +0 -0
  495. data/test/dummy/tmp/cache/assets/C94/D70/sprockets%2Faea916d8ce2618664957713f7928b505 +0 -0
  496. data/test/dummy/tmp/cache/assets/C96/2C0/sprockets%2Fe4683318365884fbd295708ffdd76411 +0 -0
  497. data/test/dummy/tmp/cache/assets/C96/C30/sprockets%2F05c3e0fdab78193100597ca21732b240 +0 -0
  498. data/test/dummy/tmp/cache/assets/C96/FD0/sprockets%2Fb2ea92be038600ec0a9b502454766020 +0 -0
  499. data/test/dummy/tmp/cache/assets/C97/620/sprockets%2Fd6a187dd770a969944280590c884b7e3 +0 -0
  500. data/test/dummy/tmp/cache/assets/C97/A60/sprockets%2Fd9cf6a17df7846771993f7191124346c +0 -0
  501. data/test/dummy/tmp/cache/assets/C97/EA0/sprockets%2F5cf03181a14067fc4a5ae8220d360218 +0 -0
  502. data/test/dummy/tmp/cache/assets/C98/0D0/sprockets%2Fb8734f08f696a8828b26778fb44643c0 +0 -0
  503. data/test/dummy/tmp/cache/assets/C98/410/sprockets%2F87851f95936d3c7c5c00f267539c158f +0 -0
  504. data/test/dummy/tmp/cache/assets/C98/460/sprockets%2F3c548d9f8118e3f9313400826ff9e848 +0 -0
  505. data/test/dummy/tmp/cache/assets/C98/D30/sprockets%2F3f2411651caa9b4fd0833085b001f490 +0 -0
  506. data/test/dummy/tmp/cache/assets/C99/320/sprockets%2Fd148d2c3062b8163517bbc344ec30244 +0 -0
  507. data/test/dummy/tmp/cache/assets/C99/490/sprockets%2F16997e6179973f7ad3b0eb59062d8914 +0 -0
  508. data/test/dummy/tmp/cache/assets/C99/810/sprockets%2Fab8d1730e377000e073b4620360e92dc +0 -0
  509. data/test/dummy/tmp/cache/assets/C9B/D70/sprockets%2F3673a307810246b3d9e4ca84d3a8000a +0 -0
  510. data/test/dummy/tmp/cache/assets/C9C/580/sprockets%2Ff2350c8af961d9861684a79b18f45669 +0 -0
  511. data/test/dummy/tmp/cache/assets/C9C/830/sprockets%2F257378c359c343e99485c46736ef0a9e +0 -0
  512. data/test/dummy/tmp/cache/assets/C9C/E60/sprockets%2F02e415ba74d1342030e6e4c5ac428675 +0 -0
  513. data/test/dummy/tmp/cache/assets/C9D/040/sprockets%2F13cb6c3f50e4a9f4064617e3205d0306 +0 -0
  514. data/test/dummy/tmp/cache/assets/C9D/CA0/sprockets%2Fd6488368e96de6905676c74fb79b3210 +0 -0
  515. data/test/dummy/tmp/cache/assets/C9F/970/sprockets%2Fee819848331c1da21b3a6304d626240e +0 -0
  516. data/test/dummy/tmp/cache/assets/C9F/CE0/sprockets%2F56383454ba44300671223dd6ab4b7ed3 +0 -0
  517. data/test/dummy/tmp/cache/assets/CA0/400/sprockets%2F416eb009b505cf50a4088253ba48268a +0 -0
  518. data/test/dummy/tmp/cache/assets/CA2/4E0/sprockets%2F064662810df01b94c2434af6f90161af +0 -0
  519. data/test/dummy/tmp/cache/assets/CA3/BB0/sprockets%2F03f6cb16bf8066f6f33520430b83a066 +0 -0
  520. data/test/dummy/tmp/cache/assets/CA3/E30/sprockets%2F2bc81b3b8b3ac52590515856f421605d +0 -0
  521. data/test/dummy/tmp/cache/assets/CA4/0A0/sprockets%2F482164b83a43ac07c4e351f2a936247b +0 -0
  522. data/test/dummy/tmp/cache/assets/CA4/840/sprockets%2F2b831117377091a2c803f8e127ea6ea4 +0 -0
  523. data/test/dummy/tmp/cache/assets/CA5/1A0/sprockets%2Fb02357f6d5905e5500c7fc529af10243 +0 -0
  524. data/test/dummy/tmp/cache/assets/CA5/2F0/sprockets%2F54df4c2621764801d17a342673c6eac2 +0 -0
  525. data/test/dummy/tmp/cache/assets/CA5/F30/sprockets%2Fb2f70423bf51f566d201679bd037170e +0 -0
  526. data/test/dummy/tmp/cache/assets/CA6/AC0/sprockets%2F27c15c84305f4b0062cf363c75c067c6 +0 -0
  527. data/test/dummy/tmp/cache/assets/CA8/080/sprockets%2Fad2824627f815e1154d19e03b35f44a5 +0 -0
  528. data/test/dummy/tmp/cache/assets/CA8/2F0/sprockets%2F912149fc7423810b329a7f2cc6d82a32 +0 -0
  529. data/test/dummy/tmp/cache/assets/CA8/740/sprockets%2F601a6f118b6060fb4548f602d4b2795d +0 -0
  530. data/test/dummy/tmp/cache/assets/CA8/7B0/sprockets%2Ffd396b13941328a37163704e1da6a53e +0 -0
  531. data/test/dummy/tmp/cache/assets/CA8/AD0/sprockets%2Fe8226081da6164555fb9c531aa3369b1 +0 -0
  532. data/test/dummy/tmp/cache/assets/CA8/BF0/sprockets%2Fe911b490684958767bd3c0203411bbdb +0 -0
  533. data/test/dummy/tmp/cache/assets/CA9/5A0/sprockets%2F8282351dd11504a68cbc8500b7786cf2 +0 -0
  534. data/test/dummy/tmp/cache/assets/CA9/7C0/sprockets%2Fd4c2d8830fd3ee151231c61163f41598 +0 -0
  535. data/test/dummy/tmp/cache/assets/CA9/E20/sprockets%2F1ca84c82be52603a0c947256a38a0598 +0 -0
  536. data/test/dummy/tmp/cache/assets/CA9/F90/sprockets%2F49615730ab8b88568e02b1226eef130b +0 -0
  537. data/test/dummy/tmp/cache/assets/CAA/3C0/sprockets%2F75ce813900f222ce7892711f61db04d3 +0 -0
  538. data/test/dummy/tmp/cache/assets/CAA/400/sprockets%2F5c330e413aa8e6769050215b5366c7ef +0 -0
  539. data/test/dummy/tmp/cache/assets/CAA/410/sprockets%2Fe3498411d0ef311af57a4f900432976a +0 -0
  540. data/test/dummy/tmp/cache/assets/CAA/9F0/sprockets%2Fb4132c4d2b7f819be30755173373b9c3 +0 -0
  541. data/test/dummy/tmp/cache/assets/CAA/A60/sprockets%2F76b467bc7a2344e208653c4261f8ab15 +0 -0
  542. data/test/dummy/tmp/cache/assets/CAA/CE0/sprockets%2Fdf22e3ea4f4383025868328363c03f2b +0 -0
  543. data/test/dummy/tmp/cache/assets/CAA/D90/sprockets%2Fd477a5c2046351a0c462bb945e3954e5 +0 -0
  544. data/test/dummy/tmp/cache/assets/CAB/010/sprockets%2Fbab4934b76d5a08f11275052a57d8267 +0 -0
  545. data/test/dummy/tmp/cache/assets/CAB/260/sprockets%2F3a249d027051a549f7ca1a0776e0767f +0 -0
  546. data/test/dummy/tmp/cache/assets/CAB/670/sprockets%2F678e67cae28828b42b010381be1f1247 +0 -0
  547. data/test/dummy/tmp/cache/assets/CAB/C30/sprockets%2F161e910a8e74f95b2333dd133e2b5557 +0 -0
  548. data/test/dummy/tmp/cache/assets/CAC/000/sprockets%2F39720f0080e70a954d9956acd571d0b2 +0 -0
  549. data/test/dummy/tmp/cache/assets/CAC/1D0/sprockets%2F62e63558132c8807eb14d542bf31cd55 +0 -0
  550. data/test/dummy/tmp/cache/assets/CAD/320/sprockets%2F8385a8212d39068b0b4bb38860e160ff +0 -0
  551. data/test/dummy/tmp/cache/assets/CAD/540/sprockets%2F6cd6077d2d3b9603d4135c97108ad580 +0 -0
  552. data/test/dummy/tmp/cache/assets/CAD/B20/sprockets%2F4c087829240d4b69e0a47e39bb8124d0 +0 -0
  553. data/test/dummy/tmp/cache/assets/CAD/CF0/sprockets%2F25811882cd57a31606348eb7b16f4f0d +0 -0
  554. data/test/dummy/tmp/cache/assets/CAE/0D0/sprockets%2F02345f5b06f3a25b588ed66b8e167034 +0 -0
  555. data/test/dummy/tmp/cache/assets/CAE/220/sprockets%2Fc0b1580bb4a89220283613a991ef6f96 +0 -0
  556. data/test/dummy/tmp/cache/assets/CAE/400/sprockets%2F001d42e622970fc906953559dc55cce0 +0 -0
  557. data/test/dummy/tmp/cache/assets/CAE/6F0/sprockets%2F091ca41269e646eee0958a9260002ee6 +0 -0
  558. data/test/dummy/tmp/cache/assets/CAE/A10/sprockets%2F9a417652b089c91b9f2bd2600fc44148 +0 -0
  559. data/test/dummy/tmp/cache/assets/CAF/790/sprockets%2F53448b199fd673d7c64190c9a3a3b211 +0 -0
  560. data/test/dummy/tmp/cache/assets/CAF/AD0/sprockets%2Fec228a94364d0d686876d02550ed15c1 +0 -0
  561. data/test/dummy/tmp/cache/assets/CB0/4D0/sprockets%2Fc8d3b85d3b111031888d656507d9c54a +0 -0
  562. data/test/dummy/tmp/cache/assets/CB1/070/sprockets%2F9cba6728b6733422b7e02386f1fc6461 +0 -0
  563. data/test/dummy/tmp/cache/assets/CB1/3A0/sprockets%2F22de41499517af8aa582914442e7f4a1 +0 -0
  564. data/test/dummy/tmp/cache/assets/CB1/810/sprockets%2Fc955dad169a09c520920679a69a115b7 +0 -0
  565. data/test/dummy/tmp/cache/assets/CB1/890/sprockets%2F885618ee4329753a0016280aab8ffb37 +0 -0
  566. data/test/dummy/tmp/cache/assets/CB1/9B0/sprockets%2F87f57e08ca13769cbd687014c332322d +0 -0
  567. data/test/dummy/tmp/cache/assets/CB1/D20/sprockets%2F3af266589b487d2511386a5c93bac801 +0 -0
  568. data/test/dummy/tmp/cache/assets/CB2/250/sprockets%2Fa7b35a4667c73e49df3382821ba61455 +0 -0
  569. data/test/dummy/tmp/cache/assets/CB2/E20/sprockets%2F86ff165475d25f0292d085557b1c0bb6 +0 -0
  570. data/test/dummy/tmp/cache/assets/CB3/790/sprockets%2F6dfa7549424909cfb20341a0b3e72888 +0 -0
  571. data/test/dummy/tmp/cache/assets/CB3/C00/sprockets%2F63c296a983bb460c9848035483be2cb2 +0 -0
  572. data/test/dummy/tmp/cache/assets/CB4/350/sprockets%2F20d5b899f43e34c64549ed9aa4526211 +0 -0
  573. data/test/dummy/tmp/cache/assets/CB4/BD0/sprockets%2Fa86fe47cf2482849d7c047a0556b0171 +0 -0
  574. data/test/dummy/tmp/cache/assets/CB4/D20/sprockets%2F94c251de5c21293f227709479c4f32be +0 -0
  575. data/test/dummy/tmp/cache/assets/CB6/560/sprockets%2F59d6144728c7d2d07ee64502db56329c +0 -0
  576. data/test/dummy/tmp/cache/assets/CB6/980/sprockets%2F908752baca0860f89a1adb4963592925 +0 -0
  577. data/test/dummy/tmp/cache/assets/CB6/AA0/sprockets%2F56d5b3f736db575c715d50659511ba76 +0 -0
  578. data/test/dummy/tmp/cache/assets/CB6/C90/sprockets%2F7f9e00e1350735a928c44c7b3e57198a +0 -0
  579. data/test/dummy/tmp/cache/assets/CB7/140/sprockets%2F548af446b8c04062f6dc9335d3887d21 +0 -0
  580. data/test/dummy/tmp/cache/assets/CB7/180/sprockets%2F01772f15f958d4918f3143f1dda172d9 +0 -0
  581. data/test/dummy/tmp/cache/assets/CB7/1F0/sprockets%2F4197d93e3b348c16a25a531fd9f30498 +0 -0
  582. data/test/dummy/tmp/cache/assets/CB7/CF0/sprockets%2F3f3ad7a66839378da014157b4277e93b +0 -0
  583. data/test/dummy/tmp/cache/assets/CB7/ED0/sprockets%2Ff8695d0f1536c18f414dfa467632323f +0 -0
  584. data/test/dummy/tmp/cache/assets/CB7/FA0/sprockets%2F62d364e38ba9b500f8b1633367f782b9 +0 -0
  585. data/test/dummy/tmp/cache/assets/CB8/180/sprockets%2Fe66eae8997e04c4bf70531e166511662 +0 -0
  586. data/test/dummy/tmp/cache/assets/CB8/1A0/sprockets%2F31aa6a08d84e55500e99848f019a64f7 +0 -0
  587. data/test/dummy/tmp/cache/assets/CB8/3D0/sprockets%2F82660934f515fc61a144b9c9cd39c482 +0 -0
  588. data/test/dummy/tmp/cache/assets/CB8/5E0/sprockets%2F39ac9e81027348a7d3678c7b902a607d +0 -0
  589. data/test/dummy/tmp/cache/assets/CB8/840/sprockets%2F8c74fb265297f32a4fc87a213827b742 +0 -0
  590. data/test/dummy/tmp/cache/assets/CB8/B60/sprockets%2F181d3aa0c983e79f2f700259e1885b56 +0 -0
  591. data/test/dummy/tmp/cache/assets/CB8/E90/sprockets%2F287e06c801ed73919420eee5438aa766 +0 -0
  592. data/test/dummy/tmp/cache/assets/CB8/EA0/sprockets%2F9e63d365e2159c725d111698cc04a7e7 +0 -0
  593. data/test/dummy/tmp/cache/assets/CB8/EF0/sprockets%2Ff47909056b54fbb653c60c2b89746b07 +0 -0
  594. data/test/dummy/tmp/cache/assets/CB9/0C0/sprockets%2F4e8172b657637124dc8887da053dc90d +0 -0
  595. data/test/dummy/tmp/cache/assets/CB9/1A0/sprockets%2F5018a74946d354964fa5d2efc3c91634 +0 -0
  596. data/test/dummy/tmp/cache/assets/CB9/680/sprockets%2F9bad6dc04875e04891351521b9795f5a +0 -0
  597. data/test/dummy/tmp/cache/assets/CB9/D00/sprockets%2Fdec288179177920eb8ac005438fc9425 +0 -0
  598. data/test/dummy/tmp/cache/assets/CBA/250/sprockets%2F39bb3860405888c9f3b4b35c738b940c +0 -0
  599. data/test/dummy/tmp/cache/assets/CBA/470/sprockets%2F4f40cdd502a8495759245e785f4b10e8 +0 -0
  600. data/test/dummy/tmp/cache/assets/CBB/650/sprockets%2F2cf882d9d849c201a76665e71d47090b +0 -0
  601. data/test/dummy/tmp/cache/assets/CBC/420/sprockets%2F5f44c3129fc7a8e64885b1f5355726c1 +0 -0
  602. data/test/dummy/tmp/cache/assets/CBC/520/sprockets%2Fc6485291750c5ad1b2498ad90498a67f +0 -0
  603. data/test/dummy/tmp/cache/assets/CBC/620/sprockets%2Fa222028f7794f7e9c619a390b389f0d3 +0 -0
  604. data/test/dummy/tmp/cache/assets/CBC/670/sprockets%2Fed21a216241599e0adb837666f64f679 +0 -0
  605. data/test/dummy/tmp/cache/assets/CBC/6C0/sprockets%2F464439bf5a0e28d80594ee09a9509f51 +0 -0
  606. data/test/dummy/tmp/cache/assets/CBC/6C0/sprockets%2F6f494cff47ee245d30168217542c66d6 +0 -0
  607. data/test/dummy/tmp/cache/assets/CBC/BB0/sprockets%2F86bd51e7b319bd796682d236651e4a37 +0 -0
  608. data/test/dummy/tmp/cache/assets/CBD/370/sprockets%2Fb1302703ec87d477fb386e77d981823c +0 -0
  609. data/test/dummy/tmp/cache/assets/CBD/470/sprockets%2F7110b265296871366ad669bde4fd287e +0 -0
  610. data/test/dummy/tmp/cache/assets/CBE/F20/sprockets%2F7610efc00f29935606275944978fbabf +0 -0
  611. data/test/dummy/tmp/cache/assets/CBF/3A0/sprockets%2Fc7b6a2891626c77607ea2881dc84d475 +0 -0
  612. data/test/dummy/tmp/cache/assets/CBF/8B0/sprockets%2F5c98534d57c1e7f7d2926173d27e4d14 +0 -0
  613. data/test/dummy/tmp/cache/assets/CBF/FB0/sprockets%2F798a9501a87778527d3ab07c5a7ab757 +0 -0
  614. data/test/dummy/tmp/cache/assets/CC0/170/sprockets%2F458478f2faf8559d5008ca28c64232f7 +0 -0
  615. data/test/dummy/tmp/cache/assets/CC0/640/sprockets%2Fd0118b2031c44248f899dc8f66784c9e +0 -0
  616. data/test/dummy/tmp/cache/assets/CC0/6D0/sprockets%2F5e75696d7832c695f40e7b1fd3d31183 +0 -0
  617. data/test/dummy/tmp/cache/assets/CC0/E60/sprockets%2F9731b0739ec7356b2e484cb427d6955f +0 -0
  618. data/test/dummy/tmp/cache/assets/CC1/280/sprockets%2Fec6dd36652375a17476b9e50274fd884 +0 -0
  619. data/test/dummy/tmp/cache/assets/CC1/600/sprockets%2F322629f082c9e743f47a32edd58874b8 +0 -0
  620. data/test/dummy/tmp/cache/assets/CC1/9D0/sprockets%2F8491d92502ae879bc8d378a74f32e129 +0 -0
  621. data/test/dummy/tmp/cache/assets/CC1/D00/sprockets%2F010bd21b402502a36d8b769be07710fb +0 -0
  622. data/test/dummy/tmp/cache/assets/CC1/DF0/sprockets%2F44075187d45483b197e2465cccf99c5c +0 -0
  623. data/test/dummy/tmp/cache/assets/CC2/4A0/sprockets%2F3879518df43c51792d5f7108a68d17be +0 -0
  624. data/test/dummy/tmp/cache/assets/CC3/960/sprockets%2F5e2c614602b8caf6b33af1100136272e +0 -0
  625. data/test/dummy/tmp/cache/assets/CC3/B20/sprockets%2Fb3c85f734d6995079665c32cb16d5f63 +0 -0
  626. data/test/dummy/tmp/cache/assets/CC3/D80/sprockets%2F02802a4b1c372f0f60a7de1c34252f61 +0 -0
  627. data/test/dummy/tmp/cache/assets/CC3/F70/sprockets%2F37207838c16e4131fe6989df49e05fe2 +0 -0
  628. data/test/dummy/tmp/cache/assets/CC4/760/sprockets%2F775571eb5b67e74f93b19ae786a16903 +0 -0
  629. data/test/dummy/tmp/cache/assets/CC4/B10/sprockets%2F55b1a4137e59cad5520e1f012eb29021 +0 -0
  630. data/test/dummy/tmp/cache/assets/CC4/B80/sprockets%2F5b090557c9468f93cc1ab77898ba2629 +0 -0
  631. data/test/dummy/tmp/cache/assets/CC5/EE0/sprockets%2F4d843268a36e2f306b869e077f157ff7 +0 -0
  632. data/test/dummy/tmp/cache/assets/CC6/850/sprockets%2F5291418cfe00a0a6b7cc1c55171f5212 +0 -0
  633. data/test/dummy/tmp/cache/assets/CC7/0B0/sprockets%2Fa26009e31f9e68672f4fc7f873909a64 +0 -0
  634. data/test/dummy/tmp/cache/assets/CC7/B50/sprockets%2F1e47a1f0d43ad62734bb351c6419102e +0 -0
  635. data/test/dummy/tmp/cache/assets/CC8/B90/sprockets%2F5d9845c9282886a459f148b3f0d95bc3 +0 -0
  636. data/test/dummy/tmp/cache/assets/CC8/E10/sprockets%2F16953d292b79b2fef06562994cc754d9 +0 -0
  637. data/test/dummy/tmp/cache/assets/CC9/7B0/sprockets%2F56a55d852968f64f7912ff0b4a7685d3 +0 -0
  638. data/test/dummy/tmp/cache/assets/CC9/D20/sprockets%2F372172a3ef18b8cac40a5c410f748021 +0 -0
  639. data/test/dummy/tmp/cache/assets/CCA/2A0/sprockets%2F8337ffdc90755c35a69884b990e59d02 +0 -0
  640. data/test/dummy/tmp/cache/assets/CCA/6D0/sprockets%2F0e1a1dbf113a82521b978a4a1a725279 +0 -0
  641. data/test/dummy/tmp/cache/assets/CCB/3B0/sprockets%2F0da9a1b01432f31e830c960638ae650e +0 -0
  642. data/test/dummy/tmp/cache/assets/CCB/B50/sprockets%2F035d03554240a88af44a47ab9005dfc2 +0 -0
  643. data/test/dummy/tmp/cache/assets/CCC/B80/sprockets%2F55f5d38df94594621ea86f96c18171e7 +0 -0
  644. data/test/dummy/tmp/cache/assets/CCC/F50/sprockets%2Fe277e38f225f8781944a34897d7ef3c1 +0 -0
  645. data/test/dummy/tmp/cache/assets/CCD/9B0/sprockets%2F0b3845e705c1a2c20c80b56c9c8a2246 +0 -0
  646. data/test/dummy/tmp/cache/assets/CCE/390/sprockets%2Feb62012223bcb36429cd139d360eb567 +0 -0
  647. data/test/dummy/tmp/cache/assets/CCE/B90/sprockets%2F582c396edb7919e3448f3792b7a8627e +0 -0
  648. data/test/dummy/tmp/cache/assets/CCE/D10/sprockets%2F4fa6a80782bc12a71820e552d06bb166 +0 -0
  649. data/test/dummy/tmp/cache/assets/CCF/7E0/sprockets%2F3d478e2550d0140a8da13a229735bcd7 +0 -0
  650. data/test/dummy/tmp/cache/assets/CCF/940/sprockets%2Fac094205607b0a46d77e156a4ebb4516 +0 -0
  651. data/test/dummy/tmp/cache/assets/CCF/F90/sprockets%2F5829cbee03489d953e8a7f842925776b +0 -0
  652. data/test/dummy/tmp/cache/assets/CD0/2E0/sprockets%2F55b65dc36d92b1c60660a2055222d9ea +0 -0
  653. data/test/dummy/tmp/cache/assets/CD0/4B0/sprockets%2Ff96040176e767aa2118dc2d16a4b413c +0 -0
  654. data/test/dummy/tmp/cache/assets/CD0/990/sprockets%2F3027964ce732931bb70c158aa61ab08d +0 -0
  655. data/test/dummy/tmp/cache/assets/CD0/F80/sprockets%2F8af86b04655d8e8d28862ab5478f9565 +0 -0
  656. data/test/dummy/tmp/cache/assets/CD1/230/sprockets%2Fedcb286269b05d0c2746328f60c1a007 +0 -0
  657. data/test/dummy/tmp/cache/assets/CD1/590/sprockets%2F2f99067423113c4aebb30a4dd3643b85 +0 -0
  658. data/test/dummy/tmp/cache/assets/CD2/2B0/sprockets%2Ffb1f940af74d29200f9020655e44b15a +0 -0
  659. data/test/dummy/tmp/cache/assets/CD2/5C0/sprockets%2F17ae7026f1ea272517ff23191fca0185 +0 -0
  660. data/test/dummy/tmp/cache/assets/CD2/C10/sprockets%2F854f3baa4316e8f290a5161d3a35508a +0 -0
  661. data/test/dummy/tmp/cache/assets/CD2/DD0/sprockets%2F467c5a1fc9b5b71b044a8130f6045c27 +0 -0
  662. data/test/dummy/tmp/cache/assets/CD3/250/sprockets%2F9982c13eacaf46622739beab50120614 +0 -0
  663. data/test/dummy/tmp/cache/assets/CD3/630/sprockets%2Ff00610ce4f24f2d960094315cf5cd156 +0 -0
  664. data/test/dummy/tmp/cache/assets/CD3/DB0/sprockets%2F38ec8b4912b23f2b31322570d56c9c2b +0 -0
  665. data/test/dummy/tmp/cache/assets/CD3/E20/sprockets%2F0b0533ca0c834dfa00378d8583d7c454 +0 -0
  666. data/test/dummy/tmp/cache/assets/CD4/6A0/sprockets%2F46b43cd41eba3026e74fa4b450369707 +0 -0
  667. data/test/dummy/tmp/cache/assets/CD4/760/sprockets%2F17016417b655023f2a67d7d583fadb2b +0 -0
  668. data/test/dummy/tmp/cache/assets/CD5/610/sprockets%2F781f678a99f8c7699162fd9362e8c2b0 +0 -0
  669. data/test/dummy/tmp/cache/assets/CD6/010/sprockets%2F4d78a2a73773d53077d96c4ca0b0d150 +0 -0
  670. data/test/dummy/tmp/cache/assets/CD7/1C0/sprockets%2F7da0653006165e7cfd74ec5104f0573d +0 -0
  671. data/test/dummy/tmp/cache/assets/CD7/3F0/sprockets%2Fda47fc6b4257475712bb5161d5a1f093 +0 -0
  672. data/test/dummy/tmp/cache/assets/CD7/E60/sprockets%2F382aba92126c110887406ff2e70b4b8f +0 -0
  673. data/test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  674. data/test/dummy/tmp/cache/assets/CD8/5E0/sprockets%2Ffd127b418d9dc4cc3d196672811a6112 +0 -0
  675. data/test/dummy/tmp/cache/assets/CD8/C00/sprockets%2F9090b24116705be9a907d1db3b66a65e +0 -0
  676. data/test/dummy/tmp/cache/assets/CD8/D40/sprockets%2F73570572f17300ebf2dda1ef2635149e +0 -0
  677. data/test/dummy/tmp/cache/assets/CD8/DD0/sprockets%2F7b4bb389373d86c1a13508d75c1071db +0 -0
  678. data/test/dummy/tmp/cache/assets/CD9/970/sprockets%2F136161482305ce48be8cb039cba47f64 +0 -0
  679. data/test/dummy/tmp/cache/assets/CD9/9B0/sprockets%2F1682bc0003ad36c529918c9b68272afc +0 -0
  680. data/test/dummy/tmp/cache/assets/CD9/B20/sprockets%2F65698070c3bce81f5ee4eb101722b741 +0 -0
  681. data/test/dummy/tmp/cache/assets/CD9/B80/sprockets%2Fb0b1f25c9374d2569a655d2a1dd25357 +0 -0
  682. data/test/dummy/tmp/cache/assets/CD9/D90/sprockets%2F87979893cfde1b28afc60797a9948345 +0 -0
  683. data/test/dummy/tmp/cache/assets/CD9/FD0/sprockets%2F66139747d4eda2ab606b44732228c2ec +0 -0
  684. data/test/dummy/tmp/cache/assets/CDA/100/sprockets%2Fb7e25fba039892f8213535e03aea6092 +0 -0
  685. data/test/dummy/tmp/cache/assets/CDA/400/sprockets%2F529ea92c26a3ef31a4c1250ec7095882 +0 -0
  686. data/test/dummy/tmp/cache/assets/CDA/610/sprockets%2F04721126ea3d934a6048c66872d9aace +0 -0
  687. data/test/dummy/tmp/cache/assets/CDA/810/sprockets%2Fb93a399a651c7205733da7365cf6a20c +0 -0
  688. data/test/dummy/tmp/cache/assets/CDB/060/sprockets%2F59609411fe82f2c303bc2f8c7d045e14 +0 -0
  689. data/test/dummy/tmp/cache/assets/CDB/150/sprockets%2Fc565aac970915a0b6123f36457b6b9e2 +0 -0
  690. data/test/dummy/tmp/cache/assets/CDB/630/sprockets%2Fc48aca3d09504ff1811d9234c8267f50 +0 -0
  691. data/test/dummy/tmp/cache/assets/CDB/900/sprockets%2F7ca164ee49b224dc24fca11444956375 +0 -0
  692. data/test/dummy/tmp/cache/assets/CDB/F40/sprockets%2F2e6f666e74290aebb31116b0f913492e +0 -0
  693. data/test/dummy/tmp/cache/assets/CDC/6F0/sprockets%2F44495b98ada400c4eb359f39da804007 +0 -0
  694. data/test/dummy/tmp/cache/assets/CDC/B50/sprockets%2F0f1e213595a02089df9735ec41c3ee80 +0 -0
  695. data/test/dummy/tmp/cache/assets/CDC/CE0/sprockets%2Fadf5a20fd1595b883ac11518595364b4 +0 -0
  696. data/test/dummy/tmp/cache/assets/CDC/E00/sprockets%2Fad43c7b7185a313c734c643cb565e673 +0 -0
  697. data/test/dummy/tmp/cache/assets/CDC/F40/sprockets%2Fc4533fdc840bf49b110953cc54e37265 +0 -0
  698. data/test/dummy/tmp/cache/assets/CDD/1F0/sprockets%2F35b328657ea4e59741574e7a0ca9da00 +0 -0
  699. data/test/dummy/tmp/cache/assets/CDD/4D0/sprockets%2F0f6b3e82dd3d95341ee015499e3072b3 +0 -0
  700. data/test/dummy/tmp/cache/assets/CDD/670/sprockets%2Fd11dc218da7862c7457c9ab59d750231 +0 -0
  701. data/test/dummy/tmp/cache/assets/CDD/700/sprockets%2F81abeb9004a9f0d068f95041f274277c +0 -0
  702. data/test/dummy/tmp/cache/assets/CDD/950/sprockets%2F50953bbf520730dfc834765c7b2b8b62 +0 -0
  703. data/test/dummy/tmp/cache/assets/CDD/A80/sprockets%2Fb26beb84e33b444a9e42722f52b19781 +0 -0
  704. data/test/dummy/tmp/cache/assets/CDE/0E0/sprockets%2F7a6f28ed8d482f104e543094026a7b3c +0 -0
  705. data/test/dummy/tmp/cache/assets/CDE/FE0/sprockets%2F73622e63d431f8250cd57842fc0bec83 +0 -0
  706. data/test/dummy/tmp/cache/assets/CDF/380/sprockets%2F39695e0a1726566c80281aab8d9a51cc +0 -0
  707. data/test/dummy/tmp/cache/assets/CDF/710/sprockets%2F16d775d6707a066df80d10cd1528ff33 +0 -0
  708. data/test/dummy/tmp/cache/assets/CDF/CA0/sprockets%2F3d5b2c400b7877c15ec29575d95b613b +0 -0
  709. data/test/dummy/tmp/cache/assets/CDF/D10/sprockets%2F335787107b488ab63480b1bb3ce76ea7 +0 -0
  710. data/test/dummy/tmp/cache/assets/CE0/150/sprockets%2F92e162c173765d0a6ea74a60c3b8f297 +0 -0
  711. data/test/dummy/tmp/cache/assets/CE0/2C0/sprockets%2F6b717c9263b7ba46f0074858023dfa5e +0 -0
  712. data/test/dummy/tmp/cache/assets/CE0/420/sprockets%2F5b3a1508216cb6b968313beae256f788 +0 -0
  713. data/test/dummy/tmp/cache/assets/CE0/4A0/sprockets%2F15600c7f628be37a11543a8e73c9ab89 +0 -0
  714. data/test/dummy/tmp/cache/assets/CE0/8E0/sprockets%2Ff8d73c0137e4da7517c4127b6e056d29 +0 -0
  715. data/test/dummy/tmp/cache/assets/CE0/B90/sprockets%2Fb509ee1a85317573a8a16d6e7c5a3617 +0 -0
  716. data/test/dummy/tmp/cache/assets/CE0/EA0/sprockets%2F96dd503181000ef248b6b55f2c9f73f4 +0 -0
  717. data/test/dummy/tmp/cache/assets/CE1/420/sprockets%2F7112f25f674c95b914cda4138c2a495e +0 -0
  718. data/test/dummy/tmp/cache/assets/CE1/970/sprockets%2F0920f4126156c25f0e9ace4f0f276f87 +0 -0
  719. data/test/dummy/tmp/cache/assets/CE1/A00/sprockets%2F168b4bf7364dfd883a5930302e0f554c +0 -0
  720. data/test/dummy/tmp/cache/assets/CE1/DC0/sprockets%2Fb417a6fbc796327c0c594b51164d78e0 +0 -0
  721. data/test/dummy/tmp/cache/assets/CE1/E80/sprockets%2F1f3d149a091eb925ec618a7088e374d1 +0 -0
  722. data/test/dummy/tmp/cache/assets/CE2/A30/sprockets%2Fd830d0d39e53a3a844891a252e864d9a +0 -0
  723. data/test/dummy/tmp/cache/assets/CE2/AD0/sprockets%2Fdc590d37dac68bf94489744c2421310d +0 -0
  724. data/test/dummy/tmp/cache/assets/CE2/CC0/sprockets%2F4b0024da353e527b099a43992cd959cf +0 -0
  725. data/test/dummy/tmp/cache/assets/CE3/240/sprockets%2F018ba37f3cc68a07d752729e44e1790e +0 -0
  726. data/test/dummy/tmp/cache/assets/CE3/680/sprockets%2F67394b9ab8eca1c91b1f2a6735646237 +0 -0
  727. data/test/dummy/tmp/cache/assets/CE3/8B0/sprockets%2F75457381e718e253615b30cef2f5adb8 +0 -0
  728. data/test/dummy/tmp/cache/assets/CE3/E70/sprockets%2F1034953506e2daacc6c8f752f3d82938 +0 -0
  729. data/test/dummy/tmp/cache/assets/CE4/260/sprockets%2F4144597dde60f756c9a533ee270ba742 +0 -0
  730. data/test/dummy/tmp/cache/assets/CE4/5F0/sprockets%2F4e3426c67bb990eb7189d265a452f0e2 +0 -0
  731. data/test/dummy/tmp/cache/assets/CE4/A90/sprockets%2F8d03987799c678a7ca958de90e96b499 +0 -0
  732. data/test/dummy/tmp/cache/assets/CE4/F60/sprockets%2Fbc3490162e3489bf88aab055d19397f0 +0 -0
  733. data/test/dummy/tmp/cache/assets/CE5/0C0/sprockets%2F08f216db06418a882f888d5db6c4a119 +0 -0
  734. data/test/dummy/tmp/cache/assets/CE5/280/sprockets%2Fc77669acec9e4150d5194810e12f418d +0 -0
  735. data/test/dummy/tmp/cache/assets/CE5/3C0/sprockets%2F51278e12fb2f83652a4698d0a7ffa625 +0 -0
  736. data/test/dummy/tmp/cache/assets/CE5/820/sprockets%2Fd5837a90d9d83d7208a14905e1f0f63d +0 -0
  737. data/test/dummy/tmp/cache/assets/CE5/A80/sprockets%2Ff284835027dd09004e65c8c7fcf4137d +0 -0
  738. data/test/dummy/tmp/cache/assets/CE5/AC0/sprockets%2Fc9a452c8b65252a7cbb47089465ae529 +0 -0
  739. data/test/dummy/tmp/cache/assets/CE5/F10/sprockets%2Fe9cf045465025d8527c83c3b93625fca +0 -0
  740. data/test/dummy/tmp/cache/assets/CE5/F80/sprockets%2F411e28ad08572cd67fcf1901569c45c8 +0 -0
  741. data/test/dummy/tmp/cache/assets/CE5/F90/sprockets%2F31557450886bf9c124f2fdb42704ce8e +0 -0
  742. data/test/dummy/tmp/cache/assets/CE5/FE0/sprockets%2F627e4127557531a3f8471cfbc718ed2f +0 -0
  743. data/test/dummy/tmp/cache/assets/CE6/240/sprockets%2F484961c0ca9bb0b56679b267406e6e2f +0 -0
  744. data/test/dummy/tmp/cache/assets/CE6/3A0/sprockets%2F0453891773e54c7f7a2290aca28f8c3e +0 -0
  745. data/test/dummy/tmp/cache/assets/CE6/4A0/sprockets%2F9c04b8b8df7217a708732da4982a5f61 +0 -0
  746. data/test/dummy/tmp/cache/assets/CE6/600/sprockets%2Feb2a1f47171172f95668f6eaaa691933 +0 -0
  747. data/test/dummy/tmp/cache/assets/CE6/E60/sprockets%2F11bd584ee0508549e6f9a4c185b61e64 +0 -0
  748. data/test/dummy/tmp/cache/assets/CE7/040/sprockets%2Fa9010c7751c3088b29b96cea42396f9e +0 -0
  749. data/test/dummy/tmp/cache/assets/CE7/650/sprockets%2F834b60044436456eefb9ce5cf7144d38 +0 -0
  750. data/test/dummy/tmp/cache/assets/CE7/970/sprockets%2Fc89cf760b663827c5e771b93d107b2c2 +0 -0
  751. data/test/dummy/tmp/cache/assets/CE7/A40/sprockets%2F2974c4aef7a04f06738c8f6a2066e292 +0 -0
  752. data/test/dummy/tmp/cache/assets/CE7/C70/sprockets%2F8627e999f207ce7214e0ab06afe86412 +0 -0
  753. data/test/dummy/tmp/cache/assets/CE7/E00/sprockets%2F7a6153b37dd5791c86f34094642bc6bf +0 -0
  754. data/test/dummy/tmp/cache/assets/CE8/2F0/sprockets%2F194583535ab9782e5983d102db1dd8ce +0 -0
  755. data/test/dummy/tmp/cache/assets/CE8/3F0/sprockets%2F909f1b19c74afd89408e59e09c4a1304 +0 -0
  756. data/test/dummy/tmp/cache/assets/CE8/AA0/sprockets%2Fd569f5f91016b77401782ef3b42de6a6 +0 -0
  757. data/test/dummy/tmp/cache/assets/CE8/C90/sprockets%2Fb58b83d1bc902887bc247af8336556c4 +0 -0
  758. data/test/dummy/tmp/cache/assets/CE8/DC0/sprockets%2F49324064376deb60c942b7d85a3e7d9b +0 -0
  759. data/test/dummy/tmp/cache/assets/CE8/F10/sprockets%2F146b8dc7365c7564824d49ec1138bbc7 +0 -0
  760. data/test/dummy/tmp/cache/assets/CE9/2D0/sprockets%2F0b878e7b11d378531e0a5d085e8e9d28 +0 -0
  761. data/test/dummy/tmp/cache/assets/CE9/760/sprockets%2F23608343fc0bfe68d8b3617de96713d6 +0 -0
  762. data/test/dummy/tmp/cache/assets/CE9/760/sprockets%2F4956fa052943d22badcc86c9077e7950 +0 -0
  763. data/test/dummy/tmp/cache/assets/CE9/D60/sprockets%2F4652a196a6e10ac52969547e909d8cad +0 -0
  764. data/test/dummy/tmp/cache/assets/CE9/F40/sprockets%2Fc23323fb2ef44ade3104929589f694e6 +0 -0
  765. data/test/dummy/tmp/cache/assets/CEA/040/sprockets%2Ff4423d669ddbb9827d4835fc83a24072 +0 -0
  766. data/test/dummy/tmp/cache/assets/CEA/6D0/sprockets%2F1da842257a051a9e871c739d29b7d77f +0 -0
  767. data/test/dummy/tmp/cache/assets/CEA/860/sprockets%2F198736e2441a36cecc857814e7dda932 +0 -0
  768. data/test/dummy/tmp/cache/assets/CEA/BC0/sprockets%2F45a84e6c8423b8e927123d9ce3be3178 +0 -0
  769. data/test/dummy/tmp/cache/assets/CEA/E10/sprockets%2F888c18a6b36ca5e51363b7b21c29f877 +0 -0
  770. data/test/dummy/tmp/cache/assets/CEB/0A0/sprockets%2Fa19152c9838b60787bad54bf0f5f6448 +0 -0
  771. data/test/dummy/tmp/cache/assets/CEB/360/sprockets%2Fa32003c94f0c552d0ab3a2b6fa280551 +0 -0
  772. data/test/dummy/tmp/cache/assets/CEB/B70/sprockets%2F139d9789a1a5e456ca4f796db15c5450 +0 -0
  773. data/test/dummy/tmp/cache/assets/CEB/B80/sprockets%2Fbd5b638965aac89832c75292e6c1435c +0 -0
  774. data/test/dummy/tmp/cache/assets/CEB/C10/sprockets%2F6cadb28080126992d76e5e35ba79088e +0 -0
  775. data/test/dummy/tmp/cache/assets/CEC/030/sprockets%2F15d996d59f6c9ce6c21f52604b903c71 +0 -0
  776. data/test/dummy/tmp/cache/assets/CEC/2B0/sprockets%2F917af8a56c884b3d5c6a03593d95a365 +0 -0
  777. data/test/dummy/tmp/cache/assets/CEC/5F0/sprockets%2F8a6262498440db8693fb315acea85d95 +0 -0
  778. data/test/dummy/tmp/cache/assets/CEC/7A0/sprockets%2F1ccee406d881875c559b82932a25e7d4 +0 -0
  779. data/test/dummy/tmp/cache/assets/CEC/B30/sprockets%2F7cf9a1c683f008354d7837ea11439f6f +0 -0
  780. data/test/dummy/tmp/cache/assets/CEC/B60/sprockets%2F9dec0e0f236608a79f6690cf29211e59 +0 -0
  781. data/test/dummy/tmp/cache/assets/CEC/BE0/sprockets%2F9b8e73d6a8882ed9a65400500dbf9094 +0 -0
  782. data/test/dummy/tmp/cache/assets/CED/1A0/sprockets%2F31e4cf6e3551bd892d767755b552b7d5 +0 -0
  783. data/test/dummy/tmp/cache/assets/CED/500/sprockets%2F23db1088d6beb9cff9245e1648555294 +0 -0
  784. data/test/dummy/tmp/cache/assets/CED/5E0/sprockets%2F6e94c3343eb6f33eb4fd9803085d2983 +0 -0
  785. data/test/dummy/tmp/cache/assets/CED/6F0/sprockets%2F17947555632d86e915cf6ccb16a545fb +0 -0
  786. data/test/dummy/tmp/cache/assets/CED/730/sprockets%2Ffd2399e766d1a513490bd481898b2eb5 +0 -0
  787. data/test/dummy/tmp/cache/assets/CEE/100/sprockets%2F922197e2ea992f30894ed9bc035d186c +0 -0
  788. data/test/dummy/tmp/cache/assets/CEE/190/sprockets%2Fad9e1761f7c888414bd42e527f19028f +0 -0
  789. data/test/dummy/tmp/cache/assets/CEE/490/sprockets%2Fb74aec392e126b756bc86972964923db +0 -0
  790. data/test/dummy/tmp/cache/assets/CEE/920/sprockets%2F97c97b08d42738b583ed92b55c540a4f +0 -0
  791. data/test/dummy/tmp/cache/assets/CEE/C90/sprockets%2Fc66d1d80067892e2b17e3666f8255eec +0 -0
  792. data/test/dummy/tmp/cache/assets/CEE/E80/sprockets%2Fad1e70a7b3529ccf694793554539c57c +0 -0
  793. data/test/dummy/tmp/cache/assets/CEE/FE0/sprockets%2Fa6564403e9f3dd369e5d44d3c6645f45 +0 -0
  794. data/test/dummy/tmp/cache/assets/CEF/160/sprockets%2F74caa14e02046241cad519b5c36c20a6 +0 -0
  795. data/test/dummy/tmp/cache/assets/CEF/4E0/sprockets%2Fb8ba5861e53326dbfa469947916dd464 +0 -0
  796. data/test/dummy/tmp/cache/assets/CEF/B60/sprockets%2Fb4101a16cca2590452bb141f093b8f1d +0 -0
  797. data/test/dummy/tmp/cache/assets/CEF/F00/sprockets%2F8ac77338a1dc57bb32999653c561e74e +0 -0
  798. data/test/dummy/tmp/cache/assets/CF0/950/sprockets%2Fd08f99c34c161881adb05d342e8984f9 +0 -0
  799. data/test/dummy/tmp/cache/assets/CF0/E10/sprockets%2F64e45655c03582eafed52f9d938b2970 +0 -0
  800. data/test/dummy/tmp/cache/assets/CF0/E30/sprockets%2F48f69b290bae9103cc8895586421aef7 +0 -0
  801. data/test/dummy/tmp/cache/assets/CF1/000/sprockets%2Fa779ae7d9f80d3098529264b91dd405d +0 -0
  802. data/test/dummy/tmp/cache/assets/CF1/5B0/sprockets%2F46e4886602bb924fc5c638865b6bf4f2 +0 -0
  803. data/test/dummy/tmp/cache/assets/CF1/980/sprockets%2Ffe3e06873a1d9f624947006e38fac498 +0 -0
  804. data/test/dummy/tmp/cache/assets/CF1/FC0/sprockets%2F33121681479e8f584ea40f68df55f6bd +0 -0
  805. data/test/dummy/tmp/cache/assets/CF2/A50/sprockets%2Fcf9138398b20d8922d6959b3d13ad7f7 +0 -0
  806. data/test/dummy/tmp/cache/assets/CF2/D50/sprockets%2Ff2a473f4e818e9762ea649a24fa77076 +0 -0
  807. data/test/dummy/tmp/cache/assets/CF4/3D0/sprockets%2F78ecd74ef58a60fb828471c7813647b4 +0 -0
  808. data/test/dummy/tmp/cache/assets/CF4/700/sprockets%2Ff96f5defe8092c45a579100804b9836f +0 -0
  809. data/test/dummy/tmp/cache/assets/CF4/7C0/sprockets%2Ff17cd218fc062a2279f957409f97d86b +0 -0
  810. data/test/dummy/tmp/cache/assets/CF4/F20/sprockets%2F6d6d68896efb528e34fd3c16875532b0 +0 -0
  811. data/test/dummy/tmp/cache/assets/CF5/2E0/sprockets%2F14513ab2f3a0311abd083e70c99bd293 +0 -0
  812. data/test/dummy/tmp/cache/assets/CF5/5C0/sprockets%2F64a4190014fe00d17e708fc02dfc2a32 +0 -0
  813. data/test/dummy/tmp/cache/assets/CF5/760/sprockets%2F681176b164b052212cabffc000e548ae +0 -0
  814. data/test/dummy/tmp/cache/assets/CF5/890/sprockets%2F7cde9c0a96f9816708c23807c5808df4 +0 -0
  815. data/test/dummy/tmp/cache/assets/CF5/D60/sprockets%2F1520db8cfcf360ded92499456176997d +0 -0
  816. data/test/dummy/tmp/cache/assets/CF6/4E0/sprockets%2Ff9c27df89c8173d41850b9c40e766a85 +0 -0
  817. data/test/dummy/tmp/cache/assets/CF6/B00/sprockets%2F97db464ddd7439e97bb4708f65170d37 +0 -0
  818. data/test/dummy/tmp/cache/assets/CF6/B30/sprockets%2Fbccf98089c3e16fee76660695a333485 +0 -0
  819. data/test/dummy/tmp/cache/assets/CF6/D80/sprockets%2F0213f60cb28483006cb1c00ae809ecf6 +0 -0
  820. data/test/dummy/tmp/cache/assets/CF8/130/sprockets%2Fd519234d99322fc8c5e8d16d52e96d78 +0 -0
  821. data/test/dummy/tmp/cache/assets/CF8/720/sprockets%2F64b18ab5939865ba89498b3aef27199a +0 -0
  822. data/test/dummy/tmp/cache/assets/CF8/8A0/sprockets%2Fa4144fea021936c315c3e315b56d6c2a +0 -0
  823. data/test/dummy/tmp/cache/assets/CF9/B70/sprockets%2F8144ebf49f85b18c46d90b897239b56e +0 -0
  824. data/test/dummy/tmp/cache/assets/CF9/D30/sprockets%2F35b1d102792fb3cf6fd942010eab0247 +0 -0
  825. data/test/dummy/tmp/cache/assets/CF9/EB0/sprockets%2F6b591f1a73b4b1b13410a5e3d0c2e488 +0 -0
  826. data/test/dummy/tmp/cache/assets/CFB/0C0/sprockets%2F75c05ecd0785f346b63ec7997f0a8859 +0 -0
  827. data/test/dummy/tmp/cache/assets/CFB/540/sprockets%2Fc40fe1438edc416788894df8b834f944 +0 -0
  828. data/test/dummy/tmp/cache/assets/CFC/580/sprockets%2Fccf1110c4053d3e7634551f70136defa +0 -0
  829. data/test/dummy/tmp/cache/assets/CFC/7F0/sprockets%2F6158d3ff6993e4c114a894dd371999ec +0 -0
  830. data/test/dummy/tmp/cache/assets/CFC/D00/sprockets%2F0b6955f101cc760792e699e88cea97e8 +0 -0
  831. data/test/dummy/tmp/cache/assets/CFD/750/sprockets%2Ff86ed3e35003369a86787f9cb98de345 +0 -0
  832. data/test/dummy/tmp/cache/assets/CFD/EA0/sprockets%2Fe43051fb1f2752c010e292ccbc53399b +0 -0
  833. data/test/dummy/tmp/cache/assets/CFD/F80/sprockets%2Fe2b02979764013ad04e2f2b23d28e2ca +0 -0
  834. data/test/dummy/tmp/cache/assets/CFE/600/sprockets%2F769f77ec667fe74911bf3a71e78c5435 +0 -0
  835. data/test/dummy/tmp/cache/assets/CFF/DF0/sprockets%2F4b52ca2b9566ca010092d68cd21690ed +0 -0
  836. data/test/dummy/tmp/cache/assets/CFF/EC0/sprockets%2Ff4f149303aecd036f1f1a3245135d8b5 +0 -0
  837. data/test/dummy/tmp/cache/assets/CFF/FC0/sprockets%2Ff34d34ffdba26c9d04860c02d6412107 +0 -0
  838. data/test/dummy/tmp/cache/assets/D00/0D0/sprockets%2F604a7b3d306124a068dc6de2b7a8744a +0 -0
  839. data/test/dummy/tmp/cache/assets/D00/110/sprockets%2F9111b1426a2982754f3ad6ced0d615ab +0 -0
  840. data/test/dummy/tmp/cache/assets/D00/520/sprockets%2F8476576513d9c9a83a7eaffdf3977760 +0 -0
  841. data/test/dummy/tmp/cache/assets/D00/5D0/sprockets%2F02f5e8429793cb8b4b69d38f8a7395e9 +0 -0
  842. data/test/dummy/tmp/cache/assets/D00/690/sprockets%2F488324fb426a1e3cb3ca16488caf4004 +0 -0
  843. data/test/dummy/tmp/cache/assets/D00/990/sprockets%2Fd0f2b027752003be9f5a766a042a93fc +0 -0
  844. data/test/dummy/tmp/cache/assets/D00/E50/sprockets%2F9392facf860c87619e3649fd72b287e7 +0 -0
  845. data/test/dummy/tmp/cache/assets/D00/F10/sprockets%2F168b7c79236d9aed9c68dc169a677287 +0 -0
  846. data/test/dummy/tmp/cache/assets/D01/210/sprockets%2F98094becbf17c66d1c25ba8421b43022 +0 -0
  847. data/test/dummy/tmp/cache/assets/D01/6F0/sprockets%2F740aff323f074082319acda2a34e781e +0 -0
  848. data/test/dummy/tmp/cache/assets/D01/710/sprockets%2Fc4b5b592d40620ba6f22c3fe611e4529 +0 -0
  849. data/test/dummy/tmp/cache/assets/D01/A00/sprockets%2F5704bfb588da51f6053f30abd310b458 +0 -0
  850. data/test/dummy/tmp/cache/assets/D01/BF0/sprockets%2F7460a4a876b0a7613baf35383db1e45a +0 -0
  851. data/test/dummy/tmp/cache/assets/D02/1F0/sprockets%2F8c3b926d5be312279c1aaa891f0f0062 +0 -0
  852. data/test/dummy/tmp/cache/assets/D02/280/sprockets%2Fa4dbf904daf395082430f44233272eda +0 -0
  853. data/test/dummy/tmp/cache/assets/D02/320/sprockets%2F95d58a54f71758967c19cec8367ceb83 +0 -0
  854. data/test/dummy/tmp/cache/assets/D02/4C0/sprockets%2F6386d72b2c51c911a7fd84ba612430cc +0 -0
  855. data/test/dummy/tmp/cache/assets/D02/6E0/sprockets%2F886e897f07ee48ec4e9f640643440dd9 +0 -0
  856. data/test/dummy/tmp/cache/assets/D02/840/sprockets%2F93becbe77a74a29528140049b140bd0e +0 -0
  857. data/test/dummy/tmp/cache/assets/D02/9C0/sprockets%2F65be886f420229fb150c2c10ea747c1b +0 -0
  858. data/test/dummy/tmp/cache/assets/D02/B90/sprockets%2Fe099c74f337e8d416e69f7973b3b7c67 +0 -0
  859. data/test/dummy/tmp/cache/assets/D02/DF0/sprockets%2F61105bd3dc48cd91aad36068219137bf +0 -0
  860. data/test/dummy/tmp/cache/assets/D03/290/sprockets%2F2721f08b1d68fe8614cb5181bd500ac7 +0 -0
  861. data/test/dummy/tmp/cache/assets/D03/B80/sprockets%2F31dd24009526a39382b08eee51c6ad5c +0 -0
  862. data/test/dummy/tmp/cache/assets/D04/550/sprockets%2F9b0e634fa0174061d1a0c068b7fe7c75 +0 -0
  863. data/test/dummy/tmp/cache/assets/D04/6D0/sprockets%2F1600a3543941f043df5d4f43fcab8a58 +0 -0
  864. data/test/dummy/tmp/cache/assets/D04/DB0/sprockets%2Fc80ac79dc21989309c20c0de1ba10739 +0 -0
  865. data/test/dummy/tmp/cache/assets/D05/410/sprockets%2Fa0fcbb465697503133cd56dc52426ae5 +0 -0
  866. data/test/dummy/tmp/cache/assets/D05/8A0/sprockets%2Fd1e45653c3a4190fb4dcc1b690781a55 +0 -0
  867. data/test/dummy/tmp/cache/assets/D06/3A0/sprockets%2Fa7fe0050b17a8652517c80d2be6c7e53 +0 -0
  868. data/test/dummy/tmp/cache/assets/D06/590/sprockets%2F19c899c20cf5d9b8629878e3add89708 +0 -0
  869. data/test/dummy/tmp/cache/assets/D06/A70/sprockets%2Ff5da4e04222a35db9d267255424bf5c6 +0 -0
  870. data/test/dummy/tmp/cache/assets/D06/BC0/sprockets%2Fe8b20853a1f42b64e9b2db8c38261d22 +0 -0
  871. data/test/dummy/tmp/cache/assets/D06/C10/sprockets%2F38cba1985dea749125f6024b2633cd1b +0 -0
  872. data/test/dummy/tmp/cache/assets/D07/330/sprockets%2F3b24c0c589b1004b399d108ae5d6ef81 +0 -0
  873. data/test/dummy/tmp/cache/assets/D07/650/sprockets%2F3153fe34d7850b9d48c630b8bd21da60 +0 -0
  874. data/test/dummy/tmp/cache/assets/D07/7F0/sprockets%2F3fb0ed6b32aa83a6878d12a209c38824 +0 -0
  875. data/test/dummy/tmp/cache/assets/D07/A80/sprockets%2Fb99ad109d988e19d8583617d7677c8fb +0 -0
  876. data/test/dummy/tmp/cache/assets/D07/BF0/sprockets%2F47962bb2378ffb6010aaa3c0238f6d66 +0 -0
  877. data/test/dummy/tmp/cache/assets/D07/C40/sprockets%2F995a361a4f2fa731412d29450fab6c4e +0 -0
  878. data/test/dummy/tmp/cache/assets/D07/DC0/sprockets%2Fcf13f583677aa0343a26a3c58d25b1e8 +0 -0
  879. data/test/dummy/tmp/cache/assets/D07/E80/sprockets%2F761670b9741e72e706a06ad3bd5f0fb1 +0 -0
  880. data/test/dummy/tmp/cache/assets/D08/170/sprockets%2Ff33de33cd10d81a6c5c5785f22c73235 +0 -0
  881. data/test/dummy/tmp/cache/assets/D08/1E0/sprockets%2F87404ab2950540bf352f76d01cfbea59 +0 -0
  882. data/test/dummy/tmp/cache/assets/D08/4B0/sprockets%2F4c75dfd9895056a9836d6876b5c5f9a8 +0 -0
  883. data/test/dummy/tmp/cache/assets/D08/530/sprockets%2F311d9ba15b34718d1e60ddc95a84194d +0 -0
  884. data/test/dummy/tmp/cache/assets/D08/670/sprockets%2F81413182cba11b4a7d7c899f4d7c33b2 +0 -0
  885. data/test/dummy/tmp/cache/assets/D08/D80/sprockets%2F388df4f82d11657bb0b4024448b6af2b +0 -0
  886. data/test/dummy/tmp/cache/assets/D09/020/sprockets%2F5176362c460747d5ebeb6c2ca3e02d84 +0 -0
  887. data/test/dummy/tmp/cache/assets/D09/0E0/sprockets%2F0e29193919038f14b1cc1a8fbfbd1861 +0 -0
  888. data/test/dummy/tmp/cache/assets/D09/110/sprockets%2F6314cfb3f8a293f12511b268cb08de48 +0 -0
  889. data/test/dummy/tmp/cache/assets/D09/2A0/sprockets%2Fdf1981e393cc868e90de0995f85865f6 +0 -0
  890. data/test/dummy/tmp/cache/assets/D09/7F0/sprockets%2Fa2d67c31222348f16a9812df26da3e8d +0 -0
  891. data/test/dummy/tmp/cache/assets/D09/B00/sprockets%2F008deed72df2c580014cb951387ae913 +0 -0
  892. data/test/dummy/tmp/cache/assets/D09/E40/sprockets%2Fc2693927bc52084b4d2b89373aaa0ac9 +0 -0
  893. data/test/dummy/tmp/cache/assets/D0A/7C0/sprockets%2F59ecc2c315eb4c9273da18bb85392025 +0 -0
  894. data/test/dummy/tmp/cache/assets/D0A/830/sprockets%2F3155dcf93a62cf601a0d48b2806b599b +0 -0
  895. data/test/dummy/tmp/cache/assets/D0A/830/sprockets%2F830cdfb33202453675d55d8de703fa2f +0 -0
  896. data/test/dummy/tmp/cache/assets/D0A/DD0/sprockets%2F00e49bc1f2658a16cb7682a0a8e95c16 +0 -0
  897. data/test/dummy/tmp/cache/assets/D0A/F30/sprockets%2F1e1583c2d42607743e9cc166bbaed419 +0 -0
  898. data/test/dummy/tmp/cache/assets/D0B/030/sprockets%2Fb21e08fc7a953c2a6924cc761428d71b +0 -0
  899. data/test/dummy/tmp/cache/assets/D0B/3E0/sprockets%2F66c11f02337c8851bfab67bbb3b94916 +0 -0
  900. data/test/dummy/tmp/cache/assets/D0B/570/sprockets%2F98e7ff34702164b7dba133b08be264a6 +0 -0
  901. data/test/dummy/tmp/cache/assets/D0B/860/sprockets%2F7efd9f55bd4a5e26019718ab2115c307 +0 -0
  902. data/test/dummy/tmp/cache/assets/D0B/8C0/sprockets%2F3905fe859d072dc46ce9140e0ba31f07 +0 -0
  903. data/test/dummy/tmp/cache/assets/D0B/E20/sprockets%2Ffabf936c2485109116fb25a3a277b28f +0 -0
  904. data/test/dummy/tmp/cache/assets/D0C/2E0/sprockets%2Fecb35ec370e250a63784c2f508b76a38 +0 -0
  905. data/test/dummy/tmp/cache/assets/D0C/8E0/sprockets%2Fae90f6a695f070da9169e14a300529fa +0 -0
  906. data/test/dummy/tmp/cache/assets/D0C/920/sprockets%2F6b14653cf0019f22eca779ee4751be60 +0 -0
  907. data/test/dummy/tmp/cache/assets/D0C/9A0/sprockets%2F036b6fe78ba5c07955461a85baa7a344 +0 -0
  908. data/test/dummy/tmp/cache/assets/D0D/250/sprockets%2F2ff737d45e2d613c278de4054e321d2e +0 -0
  909. data/test/dummy/tmp/cache/assets/D0D/2D0/sprockets%2Fc83161ea8cf425703b9ae6a93b208f90 +0 -0
  910. data/test/dummy/tmp/cache/assets/D0D/440/sprockets%2F4a4bdc15db50a07f384773aad9367746 +0 -0
  911. data/test/dummy/tmp/cache/assets/D0D/490/sprockets%2Fa28f98c36907a64874b0ba50ba5f2e51 +0 -0
  912. data/test/dummy/tmp/cache/assets/D0D/510/sprockets%2Ff56c3c9ffb168363a1f09712b0a456f2 +0 -0
  913. data/test/dummy/tmp/cache/assets/D0D/C00/sprockets%2F5781daf7b7c6765ab6910e75d5ba3102 +0 -0
  914. data/test/dummy/tmp/cache/assets/D0D/CB0/sprockets%2Faa08fa615f277edc574e6b36161b1764 +0 -0
  915. data/test/dummy/tmp/cache/assets/D0D/EC0/sprockets%2Fe64b6ea3470a7820f0f6b1955be345a8 +0 -0
  916. data/test/dummy/tmp/cache/assets/D0D/F70/sprockets%2F539c91e2874b82d2d0a2a8de60a5815d +0 -0
  917. data/test/dummy/tmp/cache/assets/D0E/010/sprockets%2F797b9e08c55a2106f8e2dace455710d0 +0 -0
  918. data/test/dummy/tmp/cache/assets/D0E/180/sprockets%2F045e183281dfc37485db513d585c5bdb +0 -0
  919. data/test/dummy/tmp/cache/assets/D0E/1C0/sprockets%2Fa677d9c320d86b48f73fc2b11651a08d +0 -0
  920. data/test/dummy/tmp/cache/assets/D0E/4E0/sprockets%2Fb2cdbc63ab95b474d109990759329a2a +0 -0
  921. data/test/dummy/tmp/cache/assets/D0E/690/sprockets%2F8a0ed53d600da2f2c788d1659ba66346 +0 -0
  922. data/test/dummy/tmp/cache/assets/D0E/7B0/sprockets%2Faf821bc72620991b57062886abfc0f8a +0 -0
  923. data/test/dummy/tmp/cache/assets/D0E/A90/sprockets%2F4ed87cbd33472d8a68d129e7c0a24045 +0 -0
  924. data/test/dummy/tmp/cache/assets/D0E/E40/sprockets%2Fdc478cae3337db897210c13c9c711e82 +0 -0
  925. data/test/dummy/tmp/cache/assets/D0E/EA0/sprockets%2F1d36a1420cf4558fb3c793316ae89ca7 +0 -0
  926. data/test/dummy/tmp/cache/assets/D0E/F60/sprockets%2Fe3a69c47253551a76c45fd007b861bde +0 -0
  927. data/test/dummy/tmp/cache/assets/D0F/0B0/sprockets%2Fe6c9fc316b319d1259c8eb19c5e30522 +0 -0
  928. data/test/dummy/tmp/cache/assets/D0F/210/sprockets%2F252e51920faf5ad7c1ad2f6c96679223 +0 -0
  929. data/test/dummy/tmp/cache/assets/D0F/560/sprockets%2Fbc6d28ba9257a963050c675a015d8d6f +0 -0
  930. data/test/dummy/tmp/cache/assets/D0F/590/sprockets%2F0602a50a4d729e9be6e2589d62d028bf +0 -0
  931. data/test/dummy/tmp/cache/assets/D0F/9E0/sprockets%2F1536c04e487ca1a768d90a68513c3cff +0 -0
  932. data/test/dummy/tmp/cache/assets/D0F/B20/sprockets%2F0bcc3319d46d753c43f875a2c26983ac +0 -0
  933. data/test/dummy/tmp/cache/assets/D10/120/sprockets%2F3db9f6cd6180f52534f66ba5c90229a3 +0 -0
  934. data/test/dummy/tmp/cache/assets/D10/2E0/sprockets%2F7870f68fbbc2a6410bb730d18b609e86 +0 -0
  935. data/test/dummy/tmp/cache/assets/D10/690/sprockets%2F996e65221e9bc79d0c3b9001e4d145cd +0 -0
  936. data/test/dummy/tmp/cache/assets/D10/750/sprockets%2F4c4a696e3e0b905d75ed60f9042cd227 +0 -0
  937. data/test/dummy/tmp/cache/assets/D10/7E0/sprockets%2F30fa9c7c7b5a187d9c28d0735132a48e +0 -0
  938. data/test/dummy/tmp/cache/assets/D10/890/sprockets%2Fdfa76c032ef4cb2636762a847488e0a2 +0 -0
  939. data/test/dummy/tmp/cache/assets/D10/B50/sprockets%2Fd5cf872242e1f19b794c63ad0830e82b +0 -0
  940. data/test/dummy/tmp/cache/assets/D10/F40/sprockets%2F262146ab66af29b05c1e386f7395cc4e +0 -0
  941. data/test/dummy/tmp/cache/assets/D11/A10/sprockets%2F004abdc6849beb5bc819187f7c068531 +0 -0
  942. data/test/dummy/tmp/cache/assets/D11/B80/sprockets%2F5afc83bc162794fd376f14d2d53922e0 +0 -0
  943. data/test/dummy/tmp/cache/assets/D11/C80/sprockets%2F1ba2e54437321859b625ed4eb3bb788f +0 -0
  944. data/test/dummy/tmp/cache/assets/D11/D30/sprockets%2F3a4ea327dcb37ee2d1e765875915126d +0 -0
  945. data/test/dummy/tmp/cache/assets/D11/D60/sprockets%2F954d9e05b5ca5d0e1566b27a059aa894 +0 -0
  946. data/test/dummy/tmp/cache/assets/D11/F70/sprockets%2Fb440b99688b10ef67502aed36d1ee652 +0 -0
  947. data/test/dummy/tmp/cache/assets/D11/FC0/sprockets%2F9bd6c83d367423fe05ef6c3338143aa6 +0 -0
  948. data/test/dummy/tmp/cache/assets/D11/FD0/sprockets%2Fa7872e06fd015c19f48f4c350d63cc19 +0 -0
  949. data/test/dummy/tmp/cache/assets/D12/1C0/sprockets%2F5901cb9faf1725dd2e472ca2965b4287 +0 -0
  950. data/test/dummy/tmp/cache/assets/D12/350/sprockets%2F73268b45c2fe9ce6084c1c6e42a25d82 +0 -0
  951. data/test/dummy/tmp/cache/assets/D12/5F0/sprockets%2Fda576d2db70dc9ab67e50171a7901977 +0 -0
  952. data/test/dummy/tmp/cache/assets/D12/BE0/sprockets%2Ff01aaa83ff0f19584cb671837a7d7444 +0 -0
  953. data/test/dummy/tmp/cache/assets/D12/F00/sprockets%2F47b50ed60cee23476959b74af812f0e1 +0 -0
  954. data/test/dummy/tmp/cache/assets/D12/F00/sprockets%2Fbe43b342066f1fc567993af3f11df077 +0 -0
  955. data/test/dummy/tmp/cache/assets/D13/520/sprockets%2F3316346df1f7f5ff0202f8d5b4742de7 +0 -0
  956. data/test/dummy/tmp/cache/assets/D13/540/sprockets%2F2014f0eb4dab38244e7de83848f36c49 +0 -0
  957. data/test/dummy/tmp/cache/assets/D13/690/sprockets%2F305c399e52a63447a7be45c4d5d3dd74 +0 -0
  958. data/test/dummy/tmp/cache/assets/D13/6B0/sprockets%2F0975ed2a9d299bf1c719b3b1137e581b +0 -0
  959. data/test/dummy/tmp/cache/assets/D13/950/sprockets%2F524ae513c5c491ec5813972febc7826b +0 -0
  960. data/test/dummy/tmp/cache/assets/D13/B40/sprockets%2Fddcfb72c9dd4f9d872604435090036f1 +0 -0
  961. data/test/dummy/tmp/cache/assets/D13/DF0/sprockets%2F990f09f573b2d52af1cea3528745af62 +0 -0
  962. data/test/dummy/tmp/cache/assets/D14/340/sprockets%2F4d057c80e80694c2c4d637ecd538bc08 +0 -0
  963. data/test/dummy/tmp/cache/assets/D14/660/sprockets%2Fd0f1a527bb9b3979c856235aebe80671 +0 -0
  964. data/test/dummy/tmp/cache/assets/D14/7C0/sprockets%2F72562c9166a322a9ed1dee8d6139af63 +0 -0
  965. data/test/dummy/tmp/cache/assets/D14/BD0/sprockets%2Ffc2255112852fb55d96d41a92f8fb6b6 +0 -0
  966. data/test/dummy/tmp/cache/assets/D14/DA0/sprockets%2F54a7d7c2a544df07d57173cda79e9700 +0 -0
  967. data/test/dummy/tmp/cache/assets/D15/0C0/sprockets%2Fc672a5447b43eda16d38f2d8b298186a +0 -0
  968. data/test/dummy/tmp/cache/assets/D15/850/sprockets%2F833e07e77066c61e8ca3f24d39a45fa5 +0 -0
  969. data/test/dummy/tmp/cache/assets/D15/A20/sprockets%2F9e52b9b230f4aa1d0e1a74699d82e983 +0 -0
  970. data/test/dummy/tmp/cache/assets/D15/B50/sprockets%2Fc8124caa04d123201bd73ffb3bc13241 +0 -0
  971. data/test/dummy/tmp/cache/assets/D15/BD0/sprockets%2Fb15d82cc0a8387b5333c89a746d49f0e +0 -0
  972. data/test/dummy/tmp/cache/assets/D15/F40/sprockets%2Fad8f7e162084d2b8a7c6f5335651b4e7 +0 -0
  973. data/test/dummy/tmp/cache/assets/D16/420/sprockets%2Fc1439b84cda5475e55f3d8da6071467c +0 -0
  974. data/test/dummy/tmp/cache/assets/D16/780/sprockets%2F6b4a1924545e380c0af7b66ea95f87f1 +0 -0
  975. data/test/dummy/tmp/cache/assets/D16/AE0/sprockets%2F58eb8df80c3b7ee3d231058355a80f85 +0 -0
  976. data/test/dummy/tmp/cache/assets/D16/B50/sprockets%2Fd9b256e8b3e85a8422a1d4fc3674f840 +0 -0
  977. data/test/dummy/tmp/cache/assets/D17/6C0/sprockets%2F69144d8b21e495ac17e4994fdfa3a803 +0 -0
  978. data/test/dummy/tmp/cache/assets/D17/ED0/sprockets%2F9f9aff2126b34dd922943d2d80d708f2 +0 -0
  979. data/test/dummy/tmp/cache/assets/D18/1F0/sprockets%2Fc46cd97b34389e04c6ab264f9e51527b +0 -0
  980. data/test/dummy/tmp/cache/assets/D18/2F0/sprockets%2Fa30a780a8699901f5fdf66fa2192f32f +0 -0
  981. data/test/dummy/tmp/cache/assets/D18/760/sprockets%2Fb4a66ff9ccb6b9f69415368590a090b1 +0 -0
  982. data/test/dummy/tmp/cache/assets/D18/970/sprockets%2F48fd387e031a0a8e7b5d99fad7138622 +0 -0
  983. data/test/dummy/tmp/cache/assets/D18/AC0/sprockets%2Fb2148fad273188b6fcb896cd5e683016 +0 -0
  984. data/test/dummy/tmp/cache/assets/D19/680/sprockets%2Fcd3a545b89d274cfd328f4d341f96272 +0 -0
  985. data/test/dummy/tmp/cache/assets/D19/6F0/sprockets%2F4d7ed3e790e4f3668380c6a70c77be30 +0 -0
  986. data/test/dummy/tmp/cache/assets/D19/760/sprockets%2F6cb307be30e1d67f838e8d11a0678d89 +0 -0
  987. data/test/dummy/tmp/cache/assets/D19/9B0/sprockets%2F7ca2f6668c5739b663a831ac977e0a1e +0 -0
  988. data/test/dummy/tmp/cache/assets/D19/AD0/sprockets%2F113bd6f12a1645dc5cc6a10bb3045b15 +0 -0
  989. data/test/dummy/tmp/cache/assets/D19/B10/sprockets%2F0d689fc3bc66ed07a9a971c1708628b4 +0 -0
  990. data/test/dummy/tmp/cache/assets/D1A/980/sprockets%2F2d774c4d64ca94551cb468cf06f9208f +0 -0
  991. data/test/dummy/tmp/cache/assets/D1B/210/sprockets%2F92ebfed0378e79e9bc22e628733d4042 +0 -0
  992. data/test/dummy/tmp/cache/assets/D1B/A50/sprockets%2F56fcea859b90b3ce7184481361e8dc08 +0 -0
  993. data/test/dummy/tmp/cache/assets/D1B/A60/sprockets%2F0f13887548f4f3b551c8c4a4b487e6bd +0 -0
  994. data/test/dummy/tmp/cache/assets/D1B/C80/sprockets%2F835147dfca8c918a99182e9e2e600f1c +0 -0
  995. data/test/dummy/tmp/cache/assets/D1C/070/sprockets%2F19aa6be16056890e435d65d4c84cf69e +0 -0
  996. data/test/dummy/tmp/cache/assets/D1C/AB0/sprockets%2Feb48e464e0c9448f11f9a75dc107c388 +0 -0
  997. data/test/dummy/tmp/cache/assets/D1C/BF0/sprockets%2F393c2da017963cb719b5c5e35986fe5d +0 -0
  998. data/test/dummy/tmp/cache/assets/D1C/DD0/sprockets%2F22b9c57e637d8bd9f33345a36e0a75e9 +0 -0
  999. data/test/dummy/tmp/cache/assets/D1D/700/sprockets%2F72d9824da671eff2338d52de93b83a56 +0 -0
  1000. data/test/dummy/tmp/cache/assets/D1D/750/sprockets%2F87e6134c4d4e6ca398d4d63be508f806 +0 -0
  1001. data/test/dummy/tmp/cache/assets/D1D/930/sprockets%2F633ef784b49825c854b02f3a68cae7c6 +0 -0
  1002. data/test/dummy/tmp/cache/assets/D1D/950/sprockets%2Fe99f1e946187b20432f95c06e2aecf74 +0 -0
  1003. data/test/dummy/tmp/cache/assets/D1D/E30/sprockets%2Fe09d7dd884e845366a3201c93ff43b9c +0 -0
  1004. data/test/dummy/tmp/cache/assets/D1E/360/sprockets%2F4a6a3690f7ffd0ee9f19758978b3a200 +0 -0
  1005. data/test/dummy/tmp/cache/assets/D1E/370/sprockets%2F99ee518676e86a61ec0dca0706665c5d +0 -0
  1006. data/test/dummy/tmp/cache/assets/D1E/A40/sprockets%2Fd9560f67d3383ade9a07ff129b47606f +0 -0
  1007. data/test/dummy/tmp/cache/assets/D1F/5D0/sprockets%2Fce9e23d48e27f794d23915d707fb9b03 +0 -0
  1008. data/test/dummy/tmp/cache/assets/D1F/5F0/sprockets%2Ff8cb248d9fc90758124cd284e17e3b66 +0 -0
  1009. data/test/dummy/tmp/cache/assets/D1F/F40/sprockets%2F3d54ac9a79c06d572aa45ea947997f33 +0 -0
  1010. data/test/dummy/tmp/cache/assets/D20/010/sprockets%2F9917f1672bf6b844937405aa4d48cdef +0 -0
  1011. data/test/dummy/tmp/cache/assets/D20/700/sprockets%2Fc6441888a1ed696daacb9786138654ae +0 -0
  1012. data/test/dummy/tmp/cache/assets/D20/840/sprockets%2F775429e7a5fa8e5c085d2f93bc57721d +0 -0
  1013. data/test/dummy/tmp/cache/assets/D20/A50/sprockets%2F4783e2bd28795d2da95bb0e195d9735e +0 -0
  1014. data/test/dummy/tmp/cache/assets/D20/B50/sprockets%2F0d38872e6d89d7e1f96aa655355adf13 +0 -0
  1015. data/test/dummy/tmp/cache/assets/D20/CB0/sprockets%2F48e30b1fa807a83a7f9656688aeb856b +0 -0
  1016. data/test/dummy/tmp/cache/assets/D21/030/sprockets%2Fef62cc74774cfc85293287c4e2c19c36 +0 -0
  1017. data/test/dummy/tmp/cache/assets/D21/1A0/sprockets%2Ff4f445f315298a7e228910ed96dd8db5 +0 -0
  1018. data/test/dummy/tmp/cache/assets/D21/310/sprockets%2F16c613de1f200ec10139fc45a3dab093 +0 -0
  1019. data/test/dummy/tmp/cache/assets/D21/7E0/sprockets%2Ffe64c33247c36798540d90fafde5709e +0 -0
  1020. data/test/dummy/tmp/cache/assets/D21/AA0/sprockets%2Fbfcf760ae796d3203689f83f519db093 +0 -0
  1021. data/test/dummy/tmp/cache/assets/D21/EF0/sprockets%2F935d9ee3ec37515493a293c3785dadc8 +0 -0
  1022. data/test/dummy/tmp/cache/assets/D22/0B0/sprockets%2F9dfda36b032e59892637b875d7af392b +0 -0
  1023. data/test/dummy/tmp/cache/assets/D22/2C0/sprockets%2Fe42d5d90d467a803999bdec116955f8b +0 -0
  1024. data/test/dummy/tmp/cache/assets/D22/730/sprockets%2F58581f3da7364ff79bb8892ac7d12b91 +0 -0
  1025. data/test/dummy/tmp/cache/assets/D22/820/sprockets%2F1bc531079d5acc4c26b027b910b2af42 +0 -0
  1026. data/test/dummy/tmp/cache/assets/D22/8F0/sprockets%2Fe6175fddcfb94f2824f621695675ea25 +0 -0
  1027. data/test/dummy/tmp/cache/assets/D22/D40/sprockets%2Fc4121b103539f9c9fa321f05b1cb0a6b +0 -0
  1028. data/test/dummy/tmp/cache/assets/D22/E20/sprockets%2F126d9e944e88d5e68cbb579c29e2213b +0 -0
  1029. data/test/dummy/tmp/cache/assets/D22/F20/sprockets%2F8bc1b012f5c454642312c1cbc6b3f32d +0 -0
  1030. data/test/dummy/tmp/cache/assets/D23/4B0/sprockets%2Fba03053a389e898f6eaaad18f4866887 +0 -0
  1031. data/test/dummy/tmp/cache/assets/D23/610/sprockets%2F0e51cca080cc65e62e080941b232a1ed +0 -0
  1032. data/test/dummy/tmp/cache/assets/D24/030/sprockets%2F6a1c1e866f660eea77d36569748b3c7e +0 -0
  1033. data/test/dummy/tmp/cache/assets/D24/370/sprockets%2F504e9f35d676c51ea45cb24e7749f94f +0 -0
  1034. data/test/dummy/tmp/cache/assets/D24/B80/sprockets%2F0be3bdcda25030bcb8c71c7402558154 +0 -0
  1035. data/test/dummy/tmp/cache/assets/D25/060/sprockets%2F5aad12d32a3897b20a00b4cf2684e16b +0 -0
  1036. data/test/dummy/tmp/cache/assets/D25/530/sprockets%2Ffd3a49a96f6efe7726b878d245f12065 +0 -0
  1037. data/test/dummy/tmp/cache/assets/D25/710/sprockets%2F8d4e935e1d5089d9793acf8f1a6c4921 +0 -0
  1038. data/test/dummy/tmp/cache/assets/D25/8F0/sprockets%2Fe3a1889ce707ebc28d6943ecd4282697 +0 -0
  1039. data/test/dummy/tmp/cache/assets/D25/950/sprockets%2Ff8d88541dfa758276393fa6f323f7a2e +0 -0
  1040. data/test/dummy/tmp/cache/assets/D25/980/sprockets%2F255b21e72d2c0d8e38da7c30eb3511a1 +0 -0
  1041. data/test/dummy/tmp/cache/assets/D25/C00/sprockets%2Ff63d097054df34bc660bdf98f7661b99 +0 -0
  1042. data/test/dummy/tmp/cache/assets/D25/E40/sprockets%2F72fe6a6283eff449a28d79d8c33494d0 +0 -0
  1043. data/test/dummy/tmp/cache/assets/D27/410/sprockets%2F03eba8c67b23a029319bb02a3c149fd3 +0 -0
  1044. data/test/dummy/tmp/cache/assets/D27/9A0/sprockets%2Fcd96e7bfd120b01aa4c61921ec063343 +0 -0
  1045. data/test/dummy/tmp/cache/assets/D29/580/sprockets%2F99f041cf104ac642bb2efa208c4021e7 +0 -0
  1046. data/test/dummy/tmp/cache/assets/D29/910/sprockets%2Fe51f36e9fde73e3928070a96fcf77571 +0 -0
  1047. data/test/dummy/tmp/cache/assets/D2A/E10/sprockets%2F2d2a1cfcc28a38330d30434fd8c1077c +0 -0
  1048. data/test/dummy/tmp/cache/assets/D2B/4C0/sprockets%2Ff18e693a0ed61ad0b3175d87d00001cf +0 -0
  1049. data/test/dummy/tmp/cache/assets/D2B/BC0/sprockets%2Fc0ce356c1046b2bfef184c53d7120a73 +0 -0
  1050. data/test/dummy/tmp/cache/assets/D2B/F20/sprockets%2Fa3e0775ac250bacf1d116939305f1fb3 +0 -0
  1051. data/test/dummy/tmp/cache/assets/D2C/830/sprockets%2F0bd01633acf234d4f7353765acea4b53 +0 -0
  1052. data/test/dummy/tmp/cache/assets/D2C/840/sprockets%2Ff898fefe84116998b56e68ad0b2d5173 +0 -0
  1053. data/test/dummy/tmp/cache/assets/D2D/7E0/sprockets%2Fc60625fab6231de71ab0ce748b191b35 +0 -0
  1054. data/test/dummy/tmp/cache/assets/D2D/E40/sprockets%2Faf21fa3d26ad3f68a23532178e20fb15 +0 -0
  1055. data/test/dummy/tmp/cache/assets/D2E/420/sprockets%2F0104ec61ab293fdc679a13dc333e9b41 +0 -0
  1056. data/test/dummy/tmp/cache/assets/D2E/7D0/sprockets%2Faab2ed88e135c8226c3833a1518a71ab +0 -0
  1057. data/test/dummy/tmp/cache/assets/D2F/100/sprockets%2F8c0286ee70744ca12c7c12a563de4b2a +0 -0
  1058. data/test/dummy/tmp/cache/assets/D2F/430/sprockets%2Fc051daa1a273d99ae91644122cd31e8e +0 -0
  1059. data/test/dummy/tmp/cache/assets/D2F/770/sprockets%2F02fc9c6163ec87ca3301a8ed104a5d63 +0 -0
  1060. data/test/dummy/tmp/cache/assets/D30/230/sprockets%2F579061565dcf87f3b5ef97de79c328f2 +0 -0
  1061. data/test/dummy/tmp/cache/assets/D30/3D0/sprockets%2Fc25f0b615d86e3c51312d2083afd08ed +0 -0
  1062. data/test/dummy/tmp/cache/assets/D30/5C0/sprockets%2F22dfce18279e968c8824f70808e6fce8 +0 -0
  1063. data/test/dummy/tmp/cache/assets/D30/870/sprockets%2F4f18811a027c9fdb47bf1815ca43db02 +0 -0
  1064. data/test/dummy/tmp/cache/assets/D30/9E0/sprockets%2F0d913be407e5e0c8732bc2c4ed6e2160 +0 -0
  1065. data/test/dummy/tmp/cache/assets/D30/C80/sprockets%2F172b4da10359fb5a0921a44756d8cace +0 -0
  1066. data/test/dummy/tmp/cache/assets/D31/1A0/sprockets%2Fa719ac1adc1bbd789653f270b1e11743 +0 -0
  1067. data/test/dummy/tmp/cache/assets/D31/710/sprockets%2Fad299a6a9b2d3b6444d242a1545de02e +0 -0
  1068. data/test/dummy/tmp/cache/assets/D32/3E0/sprockets%2Fc9f2c6b93b29fa3b0d5420b751903eb1 +0 -0
  1069. data/test/dummy/tmp/cache/assets/D32/5B0/sprockets%2F1fb6fd00554a0d42f1557bf095c2e4d4 +0 -0
  1070. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  1071. data/test/dummy/tmp/cache/assets/D32/A80/sprockets%2Fb12fb26042f73cf3b2796abc2836ee20 +0 -0
  1072. data/test/dummy/tmp/cache/assets/D32/BF0/sprockets%2F2161effd39b16585e03d2fad60f1c214 +0 -0
  1073. data/test/dummy/tmp/cache/assets/D33/6D0/sprockets%2Faea4e9f1253905c3c206be4163faf462 +0 -0
  1074. data/test/dummy/tmp/cache/assets/D33/AA0/sprockets%2Fe232a724938c4144db7ec47ca3a0b4b9 +0 -0
  1075. data/test/dummy/tmp/cache/assets/D33/C40/sprockets%2Fd2a8aa388966c03ee534024ecd1a3e15 +0 -0
  1076. data/test/dummy/tmp/cache/assets/D34/020/sprockets%2F99d101b09145af7ac80cdd219ee4730b +0 -0
  1077. data/test/dummy/tmp/cache/assets/D34/110/sprockets%2Fe516b191ae7c521a90d70ed6e1a560c9 +0 -0
  1078. data/test/dummy/tmp/cache/assets/D34/A80/sprockets%2F2b056f9b8a31a05846a5b049509afeac +0 -0
  1079. data/test/dummy/tmp/cache/assets/D35/120/sprockets%2Fee634821c4051385267b64ef5dcba3aa +0 -0
  1080. data/test/dummy/tmp/cache/assets/D35/610/sprockets%2F2c4b047e3902cacf87f03df334383c4b +0 -0
  1081. data/test/dummy/tmp/cache/assets/D35/700/sprockets%2Fb5ab6a30062ee0277b78c5ebc35a1958 +0 -0
  1082. data/test/dummy/tmp/cache/assets/D35/740/sprockets%2F61c3bb9a61f0c84d431b266fd3751be5 +0 -0
  1083. data/test/dummy/tmp/cache/assets/D35/CB0/sprockets%2Fb8be043bfd57bfd702b574152157ec23 +0 -0
  1084. data/test/dummy/tmp/cache/assets/D35/D70/sprockets%2F14bae56b0929ba886b35093d0f282bbb +0 -0
  1085. data/test/dummy/tmp/cache/assets/D35/D70/sprockets%2F955ca2e2406809aaf6ef02600b5f48ca +0 -0
  1086. data/test/dummy/tmp/cache/assets/D36/7F0/sprockets%2F78e0c63f0043ae6e6536ec504cc23a9b +0 -0
  1087. data/test/dummy/tmp/cache/assets/D36/820/sprockets%2Fa4b42a86a2d436a1f769e073e27aa47b +0 -0
  1088. data/test/dummy/tmp/cache/assets/D36/840/sprockets%2F194eb7dd741b4082654afa931a3cda28 +0 -0
  1089. data/test/dummy/tmp/cache/assets/D36/B90/sprockets%2Fa453d03a92d6fa1c62638ad3c1449e8b +0 -0
  1090. data/test/dummy/tmp/cache/assets/D36/E70/sprockets%2F69b00a4118d012bf6d7cf293b5f316ff +0 -0
  1091. data/test/dummy/tmp/cache/assets/D36/F80/sprockets%2F0de581615d3d24f365ba01f88af9b41a +0 -0
  1092. data/test/dummy/tmp/cache/assets/D37/610/sprockets%2F65e66b2c8c223ac07c5c7ad5c5c99011 +0 -0
  1093. data/test/dummy/tmp/cache/assets/D37/7C0/sprockets%2F03e1ffcecadd87170a077f207983f111 +0 -0
  1094. data/test/dummy/tmp/cache/assets/D37/AA0/sprockets%2Fead2943534ac02460e7c273fa82a38fe +0 -0
  1095. data/test/dummy/tmp/cache/assets/D37/B90/sprockets%2F17df9f1e2c50d81f1c5e2242594bfe00 +0 -0
  1096. data/test/dummy/tmp/cache/assets/D37/F10/sprockets%2Fd1e798d6133f1f8cc3d11c17d9550aa0 +0 -0
  1097. data/test/dummy/tmp/cache/assets/D38/2B0/sprockets%2Fda19dde8270c3f6a581064fb00ee4851 +0 -0
  1098. data/test/dummy/tmp/cache/assets/D38/310/sprockets%2Fbb3da38718a4315ab86307c4e62a6fe6 +0 -0
  1099. data/test/dummy/tmp/cache/assets/D38/920/sprockets%2F12627fb8c0f3cdf91ed7609a480b341a +0 -0
  1100. data/test/dummy/tmp/cache/assets/D39/260/sprockets%2F1469132dc4af5199b67b443b147aebfa +0 -0
  1101. data/test/dummy/tmp/cache/assets/D39/3A0/sprockets%2F2e21042d01b594dd46e5a7b2bece9389 +0 -0
  1102. data/test/dummy/tmp/cache/assets/D39/6E0/sprockets%2F5b10bcccb378060d35f838f5a58c525c +0 -0
  1103. data/test/dummy/tmp/cache/assets/D39/840/sprockets%2F1018dbc73bf9b07d84fbd720a470e952 +0 -0
  1104. data/test/dummy/tmp/cache/assets/D39/D00/sprockets%2F0451093c2f9faeefb84d343a79ea4041 +0 -0
  1105. data/test/dummy/tmp/cache/assets/D3A/150/sprockets%2Fd295f404f18a2cddf0ba955045f5262e +0 -0
  1106. data/test/dummy/tmp/cache/assets/D3A/2D0/sprockets%2F4a04168763c75f93ab9cb41b36debd32 +0 -0
  1107. data/test/dummy/tmp/cache/assets/D3A/520/sprockets%2F7193d867aa217d4a306848dbcc1d9c0b +0 -0
  1108. data/test/dummy/tmp/cache/assets/D3A/670/sprockets%2F0db6624d07920a5f4decb479718da33c +0 -0
  1109. data/test/dummy/tmp/cache/assets/D3A/7B0/sprockets%2Ff812a5e25abeb03b136494656f3b79bc +0 -0
  1110. data/test/dummy/tmp/cache/assets/D3A/A00/sprockets%2F1077cd94fef55fbb01ce529612180bd5 +0 -0
  1111. data/test/dummy/tmp/cache/assets/D3A/ED0/sprockets%2F5ae1cf0266d63b8eb0647535ca93b63d +0 -0
  1112. data/test/dummy/tmp/cache/assets/D3A/F90/sprockets%2F08ee8d66c16e2048233eb4ae8e0a5d07 +0 -0
  1113. data/test/dummy/tmp/cache/assets/D3B/010/sprockets%2F3b3609c83340e9fcd3cceb23f917604b +0 -0
  1114. data/test/dummy/tmp/cache/assets/D3B/0A0/sprockets%2F6e82318b9bac9ae4b2ec46448b6730b0 +0 -0
  1115. data/test/dummy/tmp/cache/assets/D3B/410/sprockets%2Fcb0aa9ea365367c16d61d078ea84a574 +0 -0
  1116. data/test/dummy/tmp/cache/assets/D3B/4F0/sprockets%2F88643a0b64d5cf920c470f0ce8c731bd +0 -0
  1117. data/test/dummy/tmp/cache/assets/D3B/5A0/sprockets%2Fb17614cedb4c7dc82b054074d586ed61 +0 -0
  1118. data/test/dummy/tmp/cache/assets/D3B/5C0/sprockets%2Fc0fa5ecc2e5594ae08a368a85205c717 +0 -0
  1119. data/test/dummy/tmp/cache/assets/D3B/6B0/sprockets%2Fd57e2d77434931c1f7504ebebb0f0c74 +0 -0
  1120. data/test/dummy/tmp/cache/assets/D3B/870/sprockets%2F14a2f9ec64aba61016378cad3a89745e +0 -0
  1121. data/test/dummy/tmp/cache/assets/D3B/CB0/sprockets%2F64e145634d2a6c7aa4bb3db1f9b69653 +0 -0
  1122. data/test/dummy/tmp/cache/assets/D3C/640/sprockets%2F42e7a70bb8be9398385afb3c4742aa04 +0 -0
  1123. data/test/dummy/tmp/cache/assets/D3C/910/sprockets%2F99239b29c69a5bcb92f42d621312adad +0 -0
  1124. data/test/dummy/tmp/cache/assets/D3C/A50/sprockets%2F86d202b46c3d0224f5ff87deb4db3770 +0 -0
  1125. data/test/dummy/tmp/cache/assets/D3C/B40/sprockets%2F04c51c1f78e9fac3a5565228e4167abc +0 -0
  1126. data/test/dummy/tmp/cache/assets/D3D/120/sprockets%2F837fd0f36c315cc5ed6321a37c78f15a +0 -0
  1127. data/test/dummy/tmp/cache/assets/D3D/3D0/sprockets%2F7f6184a495382b1a55fa1df1ebf8620c +0 -0
  1128. data/test/dummy/tmp/cache/assets/D3D/410/sprockets%2Ff106679b8b4a3b97c6922fbd1305bc4d +0 -0
  1129. data/test/dummy/tmp/cache/assets/D3D/7B0/sprockets%2F3ef4473b5d0b339084f5bb722c5ec74d +0 -0
  1130. data/test/dummy/tmp/cache/assets/D3D/A30/sprockets%2Fea9374f9f4ac230ad7e4216230cf936d +0 -0
  1131. data/test/dummy/tmp/cache/assets/D3D/A60/sprockets%2Fc1ddc173463642dde6a64d0ae5518c79 +0 -0
  1132. data/test/dummy/tmp/cache/assets/D3D/CD0/sprockets%2F3595d1551bd608fcb3dc351a87beb169 +0 -0
  1133. data/test/dummy/tmp/cache/assets/D3D/E00/sprockets%2F7f430142fdea76d6e40884c4a7cd432c +0 -0
  1134. data/test/dummy/tmp/cache/assets/D3D/EE0/sprockets%2F51e79b33fba1c5353e77bb445a6b891b +0 -0
  1135. data/test/dummy/tmp/cache/assets/D3E/290/sprockets%2Fd2f652b4e74b470bab8d423c179e19f3 +0 -0
  1136. data/test/dummy/tmp/cache/assets/D3E/3F0/sprockets%2F86979badf89dec3212225604aba2cd27 +0 -0
  1137. data/test/dummy/tmp/cache/assets/D3E/610/sprockets%2F7ddb15b4de326c562c74e81e8f07109a +0 -0
  1138. data/test/dummy/tmp/cache/assets/D3E/880/sprockets%2F3a476e3b4f8a1de2d392139d6bb3c566 +0 -0
  1139. data/test/dummy/tmp/cache/assets/D3E/900/sprockets%2F8d2f50fc5e4cfb64901183f4f732ba53 +0 -0
  1140. data/test/dummy/tmp/cache/assets/D3E/940/sprockets%2F5ed82a03c1de5c34135b67ff053787ec +0 -0
  1141. data/test/dummy/tmp/cache/assets/D3E/CF0/sprockets%2Fb817b1990e84cd9241408c4cfa0ed71e +0 -0
  1142. data/test/dummy/tmp/cache/assets/D3E/CF0/sprockets%2Ffdaaeb4c030471898b22f8c144f76b56 +0 -0
  1143. data/test/dummy/tmp/cache/assets/D3E/F80/sprockets%2Fa146a4bfc3b8cb08334b9b14fe379756 +0 -0
  1144. data/test/dummy/tmp/cache/assets/D3F/050/sprockets%2Fab4aa96dbce1e6b359f2658118291d90 +0 -0
  1145. data/test/dummy/tmp/cache/assets/D3F/150/sprockets%2Fad86b9b242ed861ca46d087951017fcb +0 -0
  1146. data/test/dummy/tmp/cache/assets/D3F/1A0/sprockets%2Ffc3bb0a82945639473ca2c4029fe4e8b +0 -0
  1147. data/test/dummy/tmp/cache/assets/D3F/350/sprockets%2Fc430fa77be69b17f1c9d6c01d667501f +0 -0
  1148. data/test/dummy/tmp/cache/assets/D3F/6B0/sprockets%2Fd4c6072434f9fab0ef336571f108efb6 +0 -0
  1149. data/test/dummy/tmp/cache/assets/D3F/760/sprockets%2Fd8f3b8c267409a532e9241a20fbb89dc +0 -0
  1150. data/test/dummy/tmp/cache/assets/D3F/C20/sprockets%2Fb4ef58d6c6be49802175630ad53bde06 +0 -0
  1151. data/test/dummy/tmp/cache/assets/D3F/DD0/sprockets%2F8c76c0f2326d807dd2a7cd072b63cf75 +0 -0
  1152. data/test/dummy/tmp/cache/assets/D3F/E10/sprockets%2Ff8492202733ea4a4f67065c95eec1beb +0 -0
  1153. data/test/dummy/tmp/cache/assets/D3F/F10/sprockets%2Fb6dcc8900d3da7ed6329638ab624f154 +0 -0
  1154. data/test/dummy/tmp/cache/assets/D40/120/sprockets%2F3b8a72c698ad5f3c04e372b028cb09f8 +0 -0
  1155. data/test/dummy/tmp/cache/assets/D40/200/sprockets%2F880e80c22dc2fa922f1b8db231799fc4 +0 -0
  1156. data/test/dummy/tmp/cache/assets/D40/3E0/sprockets%2Fd65537e1d1ddf27135ffea9a66305b54 +0 -0
  1157. data/test/dummy/tmp/cache/assets/D40/6C0/sprockets%2Fafe496eaca27b82020893b81383e8b6b +0 -0
  1158. data/test/dummy/tmp/cache/assets/D40/8F0/sprockets%2F80da1c86349f9227fe57cea00e8a8a40 +0 -0
  1159. data/test/dummy/tmp/cache/assets/D40/C20/sprockets%2Fc507af7361b5663c5bd2f441176dede8 +0 -0
  1160. data/test/dummy/tmp/cache/assets/D40/D10/sprockets%2F7af151c9b6080d9285fe058ae6d40c4d +0 -0
  1161. data/test/dummy/tmp/cache/assets/D40/E50/sprockets%2F278df3df34e9573cbd9a402e42d1193b +0 -0
  1162. data/test/dummy/tmp/cache/assets/D41/770/sprockets%2F271c5f12457864bbb0c6646c9ebf1f3f +0 -0
  1163. data/test/dummy/tmp/cache/assets/D41/8A0/sprockets%2Fbc7ce77806517ea173350e6a4d8c55db +0 -0
  1164. data/test/dummy/tmp/cache/assets/D41/950/sprockets%2F34eb91c1ce8a0e97f9e86a045c4b5216 +0 -0
  1165. data/test/dummy/tmp/cache/assets/D41/AA0/sprockets%2F82420b3e098a89f48ebf0a1fd04b29c9 +0 -0
  1166. data/test/dummy/tmp/cache/assets/D41/D70/sprockets%2F48b33bbf96854b502b0eaf902e69d55c +0 -0
  1167. data/test/dummy/tmp/cache/assets/D41/FE0/sprockets%2F2901ba969f333cc19393afd2f0fc7c64 +0 -0
  1168. data/test/dummy/tmp/cache/assets/D42/140/sprockets%2F1cb73727ffa2680da8200ea7abf78669 +0 -0
  1169. data/test/dummy/tmp/cache/assets/D42/1D0/sprockets%2Ffb783da43ed9fada2f7071260964c085 +0 -0
  1170. data/test/dummy/tmp/cache/assets/D42/2C0/sprockets%2F444a83e2c79ecc64112d294bb9b8d7a5 +0 -0
  1171. data/test/dummy/tmp/cache/assets/D42/6A0/sprockets%2F9ac05a638ee7816b9b2fb17ea1c69613 +0 -0
  1172. data/test/dummy/tmp/cache/assets/D42/850/sprockets%2F52825878ba78d155f3310c8adeeaeb36 +0 -0
  1173. data/test/dummy/tmp/cache/assets/D42/CC0/sprockets%2Fb1e122d7cd85a9d14047daef46f93376 +0 -0
  1174. data/test/dummy/tmp/cache/assets/D42/DC0/sprockets%2F6c6197617cfb36bcc7bac0477815a3f5 +0 -0
  1175. data/test/dummy/tmp/cache/assets/D42/E60/sprockets%2Fb023ab90173979d4deb9c0b51ccd3999 +0 -0
  1176. data/test/dummy/tmp/cache/assets/D43/390/sprockets%2F83be81536be1427ab49fbe736a71d4f5 +0 -0
  1177. data/test/dummy/tmp/cache/assets/D43/6F0/sprockets%2F38649a8cba0b6c9788cb58f6e03da040 +0 -0
  1178. data/test/dummy/tmp/cache/assets/D43/A30/sprockets%2Ff04f447219d67fe669002fbfbad5a914 +0 -0
  1179. data/test/dummy/tmp/cache/assets/D43/BB0/sprockets%2Fbd3f2fd3f006934806077a93bca9f7c5 +0 -0
  1180. data/test/dummy/tmp/cache/assets/D43/E30/sprockets%2Fe8da4e0365f733c7d84c7c60922ab5c6 +0 -0
  1181. data/test/dummy/tmp/cache/assets/D43/E90/sprockets%2F2351caee9e66f34809780d7a2dc2dc18 +0 -0
  1182. data/test/dummy/tmp/cache/assets/D43/FE0/sprockets%2F5d585d195aa6c45453c7d8125fcb1dc8 +0 -0
  1183. data/test/dummy/tmp/cache/assets/D44/1A0/sprockets%2Fb92362575b656dfaacbb6c4449f3277b +0 -0
  1184. data/test/dummy/tmp/cache/assets/D44/3A0/sprockets%2F445f1c0c575898429d9f0d0bc4d3ec3c +0 -0
  1185. data/test/dummy/tmp/cache/assets/D44/4B0/sprockets%2F0eecb09395e147d5b94245d54cc8d6d2 +0 -0
  1186. data/test/dummy/tmp/cache/assets/D44/6D0/sprockets%2F4d7032af47bfce2d4a8564830f8a6a96 +0 -0
  1187. data/test/dummy/tmp/cache/assets/D44/8D0/sprockets%2F34631c40f7fc893e57a147dd2f6a3bc9 +0 -0
  1188. data/test/dummy/tmp/cache/assets/D44/8E0/sprockets%2Fb841718bb1a07e7b757ff66d0e5cc582 +0 -0
  1189. data/test/dummy/tmp/cache/assets/D44/E70/sprockets%2F7834628a343cfe4b5bb57dffa81576b0 +0 -0
  1190. data/test/dummy/tmp/cache/assets/D44/EC0/sprockets%2Feceb87b6275f9079e3e1130b5fa473c4 +0 -0
  1191. data/test/dummy/tmp/cache/assets/D45/050/sprockets%2F1b1869fa7116698c5bbe2f36fccd1446 +0 -0
  1192. data/test/dummy/tmp/cache/assets/D45/1C0/sprockets%2F7e052d17bd4b749ba373bea97380c8f6 +0 -0
  1193. data/test/dummy/tmp/cache/assets/D45/3B0/sprockets%2Fd26b5a0d570ef57d06df6f032e9b8980 +0 -0
  1194. data/test/dummy/tmp/cache/assets/D45/3E0/sprockets%2F3eaefc9b68bcd82b52052504488d069f +0 -0
  1195. data/test/dummy/tmp/cache/assets/D45/580/sprockets%2F14b96ba086d5c5a5874ba107d8e3fc97 +0 -0
  1196. data/test/dummy/tmp/cache/assets/D45/9E0/sprockets%2F130c46284fa1f6c76972bedb871c1fe8 +0 -0
  1197. data/test/dummy/tmp/cache/assets/D45/BC0/sprockets%2Feca16786e19e61e8223ae46b2c76c9d1 +0 -0
  1198. data/test/dummy/tmp/cache/assets/D46/500/sprockets%2F8f1353b95c1ae2986739f51ad5b23feb +0 -0
  1199. data/test/dummy/tmp/cache/assets/D46/770/sprockets%2F96355435f9ab8090c2d3e4f0ddd9b7c3 +0 -0
  1200. data/test/dummy/tmp/cache/assets/D46/8A0/sprockets%2F49683a7741a9baf859c3aa7ff32a417b +0 -0
  1201. data/test/dummy/tmp/cache/assets/D46/900/sprockets%2F18ca5b915a90bf847363cca608be4e98 +0 -0
  1202. data/test/dummy/tmp/cache/assets/D46/930/sprockets%2F3f7e8c9b45f15625db37da7d7325dc05 +0 -0
  1203. data/test/dummy/tmp/cache/assets/D46/C00/sprockets%2Fe6b2081e4e4a5178c7fdd26e39844bf1 +0 -0
  1204. data/test/dummy/tmp/cache/assets/D46/C80/sprockets%2Ff4ba1c28702e084d8c375097c78aea9e +0 -0
  1205. data/test/dummy/tmp/cache/assets/D46/D90/sprockets%2F4b5848d10e8a19c9db7c97164df3c30d +0 -0
  1206. data/test/dummy/tmp/cache/assets/D47/2B0/sprockets%2Ff3d8c4ca1a44044d98395b36b770fcf9 +0 -0
  1207. data/test/dummy/tmp/cache/assets/D47/2E0/sprockets%2Fd277f2a5e504e0c2893c41598dedbf55 +0 -0
  1208. data/test/dummy/tmp/cache/assets/D47/670/sprockets%2F95284b12addf9c46e49d92031ace56d8 +0 -0
  1209. data/test/dummy/tmp/cache/assets/D47/730/sprockets%2Fd4896739cfee6536220ae6fcf1232ca7 +0 -0
  1210. data/test/dummy/tmp/cache/assets/D47/8F0/sprockets%2F1cc6e49382be4f74cbb97821ae1928c4 +0 -0
  1211. data/test/dummy/tmp/cache/assets/D47/AC0/sprockets%2Fb2d0bb7668a4ac043b0de0102d6513ba +0 -0
  1212. data/test/dummy/tmp/cache/assets/D47/AC0/sprockets%2Fcb9189183de4d74faa04d6ad1347964f +0 -0
  1213. data/test/dummy/tmp/cache/assets/D47/CA0/sprockets%2Fc7f7fb56a0b25867823f15b1e9aa4c96 +0 -0
  1214. data/test/dummy/tmp/cache/assets/D47/E90/sprockets%2F56ca7ae11e05a87e73dd9771c6539bc5 +0 -0
  1215. data/test/dummy/tmp/cache/assets/D48/1D0/sprockets%2Fbff4201c0944eaf31a2f6a0110cbd224 +0 -0
  1216. data/test/dummy/tmp/cache/assets/D48/250/sprockets%2F84991347702fd5edbb2ebb5515963ece +0 -0
  1217. data/test/dummy/tmp/cache/assets/D48/2F0/sprockets%2F6b79e4839df89b4abb51c2c6105d15e8 +0 -0
  1218. data/test/dummy/tmp/cache/assets/D48/410/sprockets%2F98b6e6d67873bc1138e7b06d18c0ace6 +0 -0
  1219. data/test/dummy/tmp/cache/assets/D48/580/sprockets%2F2a44a4e66eb9887cc5a85df102e90b77 +0 -0
  1220. data/test/dummy/tmp/cache/assets/D48/960/sprockets%2F90e2c11ff8fd31e591b9fd39932631bf +0 -0
  1221. data/test/dummy/tmp/cache/assets/D48/A60/sprockets%2Fa468fa273dd2ebf98c1e33c7c3985315 +0 -0
  1222. data/test/dummy/tmp/cache/assets/D48/E50/sprockets%2F4c71469bc6ed82c37fdb5e44139bb583 +0 -0
  1223. data/test/dummy/tmp/cache/assets/D49/2A0/sprockets%2F0d535287efb0b48e346f7776b5fb0be7 +0 -0
  1224. data/test/dummy/tmp/cache/assets/D49/730/sprockets%2F64dd3900972dee6569422fddf9c31b1f +0 -0
  1225. data/test/dummy/tmp/cache/assets/D49/930/sprockets%2Ff36df49d02768e07adb86105b47b5f9b +0 -0
  1226. data/test/dummy/tmp/cache/assets/D49/9B0/sprockets%2F706c326f169fa7938afca4eb0ae35949 +0 -0
  1227. data/test/dummy/tmp/cache/assets/D49/D60/sprockets%2F14760b8f0d27c9a774ec738f07bddd28 +0 -0
  1228. data/test/dummy/tmp/cache/assets/D4A/110/sprockets%2Fb3b93f448fe8a24482ad2e7d866403fe +0 -0
  1229. data/test/dummy/tmp/cache/assets/D4A/DE0/sprockets%2F45bff385904356cf5b4852a8ef07e1fb +0 -0
  1230. data/test/dummy/tmp/cache/assets/D4B/0B0/sprockets%2F7f5ee075ad6c8176e15c2af56484ff05 +0 -0
  1231. data/test/dummy/tmp/cache/assets/D4B/A50/sprockets%2F1b4c7c441c6f368422b8752df5ebef98 +0 -0
  1232. data/test/dummy/tmp/cache/assets/D4B/C20/sprockets%2Fc28f3c4d6cd98dbb784830d7c6214d65 +0 -0
  1233. data/test/dummy/tmp/cache/assets/D4B/D30/sprockets%2F156bde6845eeb43deac29648d78513a7 +0 -0
  1234. data/test/dummy/tmp/cache/assets/D4B/F70/sprockets%2Ff58e20f6e88702165bb9ca9f1e2d814f +0 -0
  1235. data/test/dummy/tmp/cache/assets/D4C/070/sprockets%2Fb75abba76993feef82f2247d57a69032 +0 -0
  1236. data/test/dummy/tmp/cache/assets/D4C/100/sprockets%2Fda16c9678195acdfa445b1689a429b9c +0 -0
  1237. data/test/dummy/tmp/cache/assets/D4C/1B0/sprockets%2F0fa6c31906dfde3647671b66cedd8396 +0 -0
  1238. data/test/dummy/tmp/cache/assets/D4C/520/sprockets%2Fb8550712b4897eedde1991cf2f65e14c +0 -0
  1239. data/test/dummy/tmp/cache/assets/D4C/BD0/sprockets%2F4ac9d1aa903d4731edf18fe2b9589829 +0 -0
  1240. data/test/dummy/tmp/cache/assets/D4C/C40/sprockets%2F2db0945ed98c864aed344686ae6e83a1 +0 -0
  1241. data/test/dummy/tmp/cache/assets/D4E/010/sprockets%2F5c07f4ba3ea01a2e9b1ccc71e2006028 +0 -0
  1242. data/test/dummy/tmp/cache/assets/D4E/2E0/sprockets%2F8a0214ec4c689155dabf788bb2f7877d +0 -0
  1243. data/test/dummy/tmp/cache/assets/D4E/3C0/sprockets%2F8b9a09f7df4b2a3f486cacd187521878 +0 -0
  1244. data/test/dummy/tmp/cache/assets/D4E/4D0/sprockets%2F709e6ba42c7c9e3d94474b3cc9a67f26 +0 -0
  1245. data/test/dummy/tmp/cache/assets/D4E/5A0/sprockets%2Ffb32d449b4bc8d5193d5daf6838f1667 +0 -0
  1246. data/test/dummy/tmp/cache/assets/D4E/640/sprockets%2Fdaab3d2130266b5b7a2f1d04b8c4322e +0 -0
  1247. data/test/dummy/tmp/cache/assets/D4E/6C0/sprockets%2Fedd9cf282af0f00637e5273c8c3888b9 +0 -0
  1248. data/test/dummy/tmp/cache/assets/D4E/D00/sprockets%2F1a6846f0a837ae2524e2f9ec89e6ef43 +0 -0
  1249. data/test/dummy/tmp/cache/assets/D4E/EF0/sprockets%2F1df54511127103a072bed5b21cafead6 +0 -0
  1250. data/test/dummy/tmp/cache/assets/D50/190/sprockets%2F0a2b9abfa0a059b017055840beb85a2d +0 -0
  1251. data/test/dummy/tmp/cache/assets/D50/4B0/sprockets%2F0b1488c1064ae6cabab7a30c2b292e06 +0 -0
  1252. data/test/dummy/tmp/cache/assets/D50/810/sprockets%2Fee536e389f63f834aece59d21801d36f +0 -0
  1253. data/test/dummy/tmp/cache/assets/D50/C20/sprockets%2Ff1a5a7507fede68fe95f09d37274137c +0 -0
  1254. data/test/dummy/tmp/cache/assets/D50/D40/sprockets%2Fbe666f1ffdb0f91d930899161a069fe5 +0 -0
  1255. data/test/dummy/tmp/cache/assets/D50/E10/sprockets%2F28698bc0c536fe5e97a2935e3bb929bb +0 -0
  1256. data/test/dummy/tmp/cache/assets/D50/ED0/sprockets%2F5332ba66dc2dfa796617ee96ce9d9900 +0 -0
  1257. data/test/dummy/tmp/cache/assets/D51/430/sprockets%2F7bf6ecc28263fac9f9fb429136695a53 +0 -0
  1258. data/test/dummy/tmp/cache/assets/D51/970/sprockets%2F7909fe0d4e13b4899c9fe4811d9b2fa3 +0 -0
  1259. data/test/dummy/tmp/cache/assets/D51/9A0/sprockets%2Fff730a46d71c5a873e97fd15889c21de +0 -0
  1260. data/test/dummy/tmp/cache/assets/D51/BE0/sprockets%2F8fb21c278a9b7f85c865975e84aa5da0 +0 -0
  1261. data/test/dummy/tmp/cache/assets/D52/1E0/sprockets%2Ff944622d87bfe6f049ed4d538e823ad4 +0 -0
  1262. data/test/dummy/tmp/cache/assets/D52/9D0/sprockets%2Fbb6de37d8349d9caa9b54427997e10b9 +0 -0
  1263. data/test/dummy/tmp/cache/assets/D52/EB0/sprockets%2F845afe487827fd254911feb27fa9ff21 +0 -0
  1264. data/test/dummy/tmp/cache/assets/D53/0C0/sprockets%2F1525e3864167f2cdbdf7e815f67f19df +0 -0
  1265. data/test/dummy/tmp/cache/assets/D53/520/sprockets%2F0425319886a4f5c8945aa7ffd69fb6ae +0 -0
  1266. data/test/dummy/tmp/cache/assets/D53/DE0/sprockets%2F7736b51cb3bf8679b8bdc8ab9d184954 +0 -0
  1267. data/test/dummy/tmp/cache/assets/D53/DF0/sprockets%2F4944df81f8eac8c68fc5a448135d91d5 +0 -0
  1268. data/test/dummy/tmp/cache/assets/D53/E50/sprockets%2Fb969596338bb3970b4d09a9bf1dd4ff6 +0 -0
  1269. data/test/dummy/tmp/cache/assets/D54/0D0/sprockets%2F448752db3a53dd453db1b01de121ebd2 +0 -0
  1270. data/test/dummy/tmp/cache/assets/D54/210/sprockets%2F685458463f9ac9566ebff2e93bbc920b +0 -0
  1271. data/test/dummy/tmp/cache/assets/D54/D40/sprockets%2Fae94d636e834686618d7edea66bfd405 +0 -0
  1272. data/test/dummy/tmp/cache/assets/D55/920/sprockets%2Fb62b7535d8b569ca6b2538bfb97b89d8 +0 -0
  1273. data/test/dummy/tmp/cache/assets/D56/140/sprockets%2F20a89c927f3ff593ebf3349f31f39e9a +0 -0
  1274. data/test/dummy/tmp/cache/assets/D56/1F0/sprockets%2F291fcb7a26ff3aac6bc1404e0a247242 +0 -0
  1275. data/test/dummy/tmp/cache/assets/D56/5A0/sprockets%2F24eaabe70886b65518cde5e8d953849f +0 -0
  1276. data/test/dummy/tmp/cache/assets/D56/A80/sprockets%2F65079690df677a1eb0eb8ecfb35798f4 +0 -0
  1277. data/test/dummy/tmp/cache/assets/D56/BA0/sprockets%2Fed013a2db663133e834b255e3aff20da +0 -0
  1278. data/test/dummy/tmp/cache/assets/D56/EF0/sprockets%2F9841b7e3e5c96195e8aadd8f107c64f8 +0 -0
  1279. data/test/dummy/tmp/cache/assets/D57/B80/sprockets%2F11141aae7a24db122b6ff73d3c6a5c48 +0 -0
  1280. data/test/dummy/tmp/cache/assets/D57/CE0/sprockets%2F140df960c8b7db13118010bb750cfcce +0 -0
  1281. data/test/dummy/tmp/cache/assets/D57/DF0/sprockets%2F8d06b94587d49e037e77f8afcb6802cf +0 -0
  1282. data/test/dummy/tmp/cache/assets/D58/2D0/sprockets%2F61d0cc15903cb43c85ad762dcc0a326c +0 -0
  1283. data/test/dummy/tmp/cache/assets/D58/BC0/sprockets%2F1918f7df37c8a71ceeef81f95859131d +0 -0
  1284. data/test/dummy/tmp/cache/assets/D58/CD0/sprockets%2F866919a6d25cec7a729a3ee6299f1c6f +0 -0
  1285. data/test/dummy/tmp/cache/assets/D59/070/sprockets%2F822cd47e69d40ba87f95181fdd698ed5 +0 -0
  1286. data/test/dummy/tmp/cache/assets/D5A/2B0/sprockets%2Fd347f40bde5bbe0062904e3a6e51f01c +0 -0
  1287. data/test/dummy/tmp/cache/assets/D5A/D80/sprockets%2F28dc9152e2ead49ae414a5b82d04a1a2 +0 -0
  1288. data/test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  1289. data/test/dummy/tmp/cache/assets/D5C/450/sprockets%2F4b2fa6cdb3e243b19c0280e23a2986ca +0 -0
  1290. data/test/dummy/tmp/cache/assets/D5C/660/sprockets%2F5baf6a64b3151ae6bf40155e90db6e03 +0 -0
  1291. data/test/dummy/tmp/cache/assets/D5D/020/sprockets%2Fa769a9199ea93b9a1273699ee12fe8ee +0 -0
  1292. data/test/dummy/tmp/cache/assets/D5D/060/sprockets%2F8a821525b5ad23bf362fcd21a62d5a7c +0 -0
  1293. data/test/dummy/tmp/cache/assets/D5D/120/sprockets%2F1d71e8cf1b3ca05ca8165a84a90bb615 +0 -0
  1294. data/test/dummy/tmp/cache/assets/D5D/150/sprockets%2F62cdbc0997bf7f886d971d628dfb6059 +0 -0
  1295. data/test/dummy/tmp/cache/assets/D5E/280/sprockets%2F7476a3fd6b9edff480a39d6e66f58708 +0 -0
  1296. data/test/dummy/tmp/cache/assets/D5E/F90/sprockets%2F93645769a318ef58afdfdfe326891c6f +0 -0
  1297. data/test/dummy/tmp/cache/assets/D5F/7F0/sprockets%2Fabbcc55042a82b42c900c09d59de4c29 +0 -0
  1298. data/test/dummy/tmp/cache/assets/D5F/A30/sprockets%2F1b6a076e9dfac220107d3ec6b4a3b766 +0 -0
  1299. data/test/dummy/tmp/cache/assets/D5F/C40/sprockets%2Fb898ec7d8f3bc1559821f8514e6d9cd9 +0 -0
  1300. data/test/dummy/tmp/cache/assets/D5F/CE0/sprockets%2F3024d4daeed68300ec4fa9a97a4023e2 +0 -0
  1301. data/test/dummy/tmp/cache/assets/D60/020/sprockets%2Fbfae71323b4823d863b570f22ef20bcd +0 -0
  1302. data/test/dummy/tmp/cache/assets/D60/2A0/sprockets%2Fcd5c12269b6c414bf722c6c2dc0e18c4 +0 -0
  1303. data/test/dummy/tmp/cache/assets/D60/350/sprockets%2F1cfbb7a35f165be5ae2b2436e283412f +0 -0
  1304. data/test/dummy/tmp/cache/assets/D60/870/sprockets%2F0421b7f12e44d88ae2bf59a690ac2cb1 +0 -0
  1305. data/test/dummy/tmp/cache/assets/D60/9B0/sprockets%2F6e2304829a1ca51aff83cffb92a034a4 +0 -0
  1306. data/test/dummy/tmp/cache/assets/D60/B40/sprockets%2F11e3b14ae2df1da7b72690c158dc45d5 +0 -0
  1307. data/test/dummy/tmp/cache/assets/D60/D20/sprockets%2F0cfb8ba2744ab0976700c8bd72b2ec07 +0 -0
  1308. data/test/dummy/tmp/cache/assets/D61/180/sprockets%2F8d15744bb332d6b8b1ffef2ce0315c04 +0 -0
  1309. data/test/dummy/tmp/cache/assets/D61/C30/sprockets%2Fd440a1693cc34770fe3b1dc1ea56c66a +0 -0
  1310. data/test/dummy/tmp/cache/assets/D62/140/sprockets%2F7e5a724c4c00951a0da7ec767ce19aa1 +0 -0
  1311. data/test/dummy/tmp/cache/assets/D62/2E0/sprockets%2F51a06ddef9bd05b405fd605d37be3154 +0 -0
  1312. data/test/dummy/tmp/cache/assets/D62/360/sprockets%2F364ce454ad460a2f35a2a6d005cef6d9 +0 -0
  1313. data/test/dummy/tmp/cache/assets/D62/800/sprockets%2F71c1dbac74249cb8a1016f837d20ecd6 +0 -0
  1314. data/test/dummy/tmp/cache/assets/D62/DC0/sprockets%2Fdc85fe987fbe94ab12319de36595c989 +0 -0
  1315. data/test/dummy/tmp/cache/assets/D63/220/sprockets%2F01cf90c140b4202bfaf943c7fc9195ce +0 -0
  1316. data/test/dummy/tmp/cache/assets/D63/5F0/sprockets%2F22dfbdd7a227061033a9c7274eb4bf5f +0 -0
  1317. data/test/dummy/tmp/cache/assets/D63/860/sprockets%2Fbbb94522b6db1a4712fb253688cb1cf6 +0 -0
  1318. data/test/dummy/tmp/cache/assets/D63/B00/sprockets%2F2672399dfcdd2b6b61536cab3d800bc1 +0 -0
  1319. data/test/dummy/tmp/cache/assets/D63/B10/sprockets%2Fe2f21a7c531fd7cb11df1c49ce188700 +0 -0
  1320. data/test/dummy/tmp/cache/assets/D63/D60/sprockets%2Ff791df22a3d7e2f4ef01ad0742f370c1 +0 -0
  1321. data/test/dummy/tmp/cache/assets/D63/DC0/sprockets%2Fc298c2b66150c7f11d95cecf450bb14a +0 -0
  1322. data/test/dummy/tmp/cache/assets/D64/610/sprockets%2F1a8a491fb107450dd0eded47ee531c65 +0 -0
  1323. data/test/dummy/tmp/cache/assets/D64/670/sprockets%2F7dc8c0ad36d436eb56a0824a46e0eb08 +0 -0
  1324. data/test/dummy/tmp/cache/assets/D64/A40/sprockets%2Fe8352ebfe3812d5c5d0b023a6e5bc942 +0 -0
  1325. data/test/dummy/tmp/cache/assets/D64/B50/sprockets%2F7ac06eacb363b85744337c0ea88e2b0c +0 -0
  1326. data/test/dummy/tmp/cache/assets/D64/C90/sprockets%2F3cea20626bd7dac360f17597f0fc3d32 +0 -0
  1327. data/test/dummy/tmp/cache/assets/D65/110/sprockets%2F588eff440ed1b50144c701fddae3a581 +0 -0
  1328. data/test/dummy/tmp/cache/assets/D65/410/sprockets%2F71d5d01cc214fda7b974ef486a5a4b22 +0 -0
  1329. data/test/dummy/tmp/cache/assets/D65/990/sprockets%2Fa2965ca374a00aaceb747e60b654e2f8 +0 -0
  1330. data/test/dummy/tmp/cache/assets/D65/B00/sprockets%2Fc4b6f0f4ca6e391e2f2460c751cf4e21 +0 -0
  1331. data/test/dummy/tmp/cache/assets/D65/E30/sprockets%2F80131612ad6df6bada3d955f52d20ef8 +0 -0
  1332. data/test/dummy/tmp/cache/assets/D65/E40/sprockets%2F01eb4bea8b88a1f523ca292ec7355d44 +0 -0
  1333. data/test/dummy/tmp/cache/assets/D66/210/sprockets%2F1d508e76f533ec10d257bc7dcc8bc313 +0 -0
  1334. data/test/dummy/tmp/cache/assets/D66/6C0/sprockets%2F1b63a7f0e3fb2a7f3124f198d0ff462b +0 -0
  1335. data/test/dummy/tmp/cache/assets/D67/360/sprockets%2Fb360e4387be6ff22ec1281b1fed3b751 +0 -0
  1336. data/test/dummy/tmp/cache/assets/D67/760/sprockets%2F10fa2be053931aee797b2ff1296ac9b2 +0 -0
  1337. data/test/dummy/tmp/cache/assets/D67/8E0/sprockets%2Ffd0eaaf36da9805e6c4ec303534162f5 +0 -0
  1338. data/test/dummy/tmp/cache/assets/D67/920/sprockets%2Fb2da5357724d4735be0eb1a0d99ffe30 +0 -0
  1339. data/test/dummy/tmp/cache/assets/D67/A60/sprockets%2Faa00971b7f5d4b45eb77d656a284a5aa +0 -0
  1340. data/test/dummy/tmp/cache/assets/D67/B70/sprockets%2F93b435826e79fa4e5f6eaa001a7a11bf +0 -0
  1341. data/test/dummy/tmp/cache/assets/D68/0C0/sprockets%2F6c628ddf1ba5c680e04ad54a476f163b +0 -0
  1342. data/test/dummy/tmp/cache/assets/D68/210/sprockets%2Fdc284967860db06c2cb2e1da78bab156 +0 -0
  1343. data/test/dummy/tmp/cache/assets/D68/D60/sprockets%2F098cf98a00a3af19813b1d219f2aa9ed +0 -0
  1344. data/test/dummy/tmp/cache/assets/D69/1C0/sprockets%2Fa69eaac33161deb83611c5ce740ff772 +0 -0
  1345. data/test/dummy/tmp/cache/assets/D69/490/sprockets%2Fec6b9dc7d26370cb16e31c8f051e3e07 +0 -0
  1346. data/test/dummy/tmp/cache/assets/D69/910/sprockets%2F529fbdbb6c6b91114101cceac992638f +0 -0
  1347. data/test/dummy/tmp/cache/assets/D69/C10/sprockets%2Ff6e71ec4a507e10c41cc544f83ce375b +0 -0
  1348. data/test/dummy/tmp/cache/assets/D69/C80/sprockets%2F4ad3f74fe4008882cf2af03dbe2c5157 +0 -0
  1349. data/test/dummy/tmp/cache/assets/D69/DE0/sprockets%2F92cac6f053a26f5833510cc49a8b5ebe +0 -0
  1350. data/test/dummy/tmp/cache/assets/D69/E30/sprockets%2F05bb03be9b376bd73f6e0793fc6a5c30 +0 -0
  1351. data/test/dummy/tmp/cache/assets/D69/E70/sprockets%2Fda83e024ef0e845f27207dcc644b42ed +0 -0
  1352. data/test/dummy/tmp/cache/assets/D69/E80/sprockets%2Fb054b16b71e995aa3c4ec5d6af53a853 +0 -0
  1353. data/test/dummy/tmp/cache/assets/D69/F10/sprockets%2Ff34035624ea8bef910a3f3afdc9f0526 +0 -0
  1354. data/test/dummy/tmp/cache/assets/D6A/0C0/sprockets%2Fce3c49f0751b4d66dde421cdf934a143 +0 -0
  1355. data/test/dummy/tmp/cache/assets/D6A/2E0/sprockets%2Fc3a3a8e66c9b58b52b1db3ad754c9423 +0 -0
  1356. data/test/dummy/tmp/cache/assets/D6A/7A0/sprockets%2Fb9763eb93985c7ed8774a8276efe68af +0 -0
  1357. data/test/dummy/tmp/cache/assets/D6B/1D0/sprockets%2F3a74a98461df56d62f7dad00b1e7b35c +0 -0
  1358. data/test/dummy/tmp/cache/assets/D6B/200/sprockets%2F5d6139fdef36c3f5380b2a7c2c4fc332 +0 -0
  1359. data/test/dummy/tmp/cache/assets/D6B/850/sprockets%2F7e11ecd2d099e4109db4101f9a2ecd97 +0 -0
  1360. data/test/dummy/tmp/cache/assets/D6B/BA0/sprockets%2F8293eb343aead8dda54496532fb24fa1 +0 -0
  1361. data/test/dummy/tmp/cache/assets/D6C/290/sprockets%2F93d376366f86bcf201c0bc03ffb19df2 +0 -0
  1362. data/test/dummy/tmp/cache/assets/D6C/410/sprockets%2F5e657daa9dd7594a0ea21120584fd7cb +0 -0
  1363. data/test/dummy/tmp/cache/assets/D6C/AD0/sprockets%2Fdabce05f6e4419832e20d6b7420fe9a7 +0 -0
  1364. data/test/dummy/tmp/cache/assets/D6D/080/sprockets%2F3cc7b7355591babda1661e6c5e9f8c20 +0 -0
  1365. data/test/dummy/tmp/cache/assets/D6D/0F0/sprockets%2Fd708026e8f50e44298c6aefb5ce31a0e +0 -0
  1366. data/test/dummy/tmp/cache/assets/D6D/300/sprockets%2F3d773a568581711fe14bdb4dbbb4dc49 +0 -0
  1367. data/test/dummy/tmp/cache/assets/D6D/570/sprockets%2Fa5fcc303c8544736ee76ef1a3b0c7b93 +0 -0
  1368. data/test/dummy/tmp/cache/assets/D6D/640/sprockets%2F3fbad42b446e631f6a9d574e2946aaf0 +0 -0
  1369. data/test/dummy/tmp/cache/assets/D6D/7A0/sprockets%2Fff4be901f55528b85b2b1fc73ebc4352 +0 -0
  1370. data/test/dummy/tmp/cache/assets/D6D/CF0/sprockets%2Fbbad825b6b477d1967533ee21c454ade +0 -0
  1371. data/test/dummy/tmp/cache/assets/D6D/DF0/sprockets%2F395395c75fd86ea2c57e15c3ffaba000 +0 -0
  1372. data/test/dummy/tmp/cache/assets/D6D/E80/sprockets%2F9ef00ee94e3b0eed7c4e45b342085d51 +0 -0
  1373. data/test/dummy/tmp/cache/assets/D6D/FF0/sprockets%2F4265ef4aff8212bda7dd9ba6b1653284 +0 -0
  1374. data/test/dummy/tmp/cache/assets/D6E/230/sprockets%2F057c37a11c8bee66c054e4fe181f3df6 +0 -0
  1375. data/test/dummy/tmp/cache/assets/D6E/3A0/sprockets%2F8b8a072633608ff65adcdf071b3aec76 +0 -0
  1376. data/test/dummy/tmp/cache/assets/D6E/570/sprockets%2F83429d8fdebcb1c467055e4515aa4b8c +0 -0
  1377. data/test/dummy/tmp/cache/assets/D6E/830/sprockets%2F4c3705df442d9dcf753b3c4b359c3c4c +0 -0
  1378. data/test/dummy/tmp/cache/assets/D6E/940/sprockets%2Fb19f43bd8383eeb5e26a4d2b79f1240e +0 -0
  1379. data/test/dummy/tmp/cache/assets/D6E/9F0/sprockets%2F15f61ad82d9ca6cce6a0e42b7249662f +0 -0
  1380. data/test/dummy/tmp/cache/assets/D6E/B00/sprockets%2Fb3e0044ac96eca090d459eea85cd8680 +0 -0
  1381. data/test/dummy/tmp/cache/assets/D6E/EE0/sprockets%2Fd74ff02ca9ebc91612c336ea92bb8096 +0 -0
  1382. data/test/dummy/tmp/cache/assets/D6E/EE0/sprockets%2Fe381a6c6c4ce14ce721f9ed50491db91 +0 -0
  1383. data/test/dummy/tmp/cache/assets/D6F/080/sprockets%2Faa47fdc53e5256226a127c75d8b9ad8b +0 -0
  1384. data/test/dummy/tmp/cache/assets/D6F/350/sprockets%2Fb7e20405a742f5f2b57fbbdbe844e179 +0 -0
  1385. data/test/dummy/tmp/cache/assets/D6F/AB0/sprockets%2Fb9d2a198d05cec1f1f9e110318cdf929 +0 -0
  1386. data/test/dummy/tmp/cache/assets/D70/150/sprockets%2Ff132877e030f4c6de05e83ebc4e65ba8 +0 -0
  1387. data/test/dummy/tmp/cache/assets/D70/B90/sprockets%2F691f0ce139f58f0c0c4a346be78a5c7b +0 -0
  1388. data/test/dummy/tmp/cache/assets/D70/BB0/sprockets%2F8a4ded28a32451b53f5cdd24758dd49a +0 -0
  1389. data/test/dummy/tmp/cache/assets/D70/C50/sprockets%2F6f8e7965bc7a900a21de2b2ed212fa99 +0 -0
  1390. data/test/dummy/tmp/cache/assets/D70/D10/sprockets%2Fc86c50cd9c7036f1da61c695b2e5c5c5 +0 -0
  1391. data/test/dummy/tmp/cache/assets/D70/D20/sprockets%2Fee58c6385d12ad1d59fae4c15604e6c4 +0 -0
  1392. data/test/dummy/tmp/cache/assets/D70/F10/sprockets%2Fa842cc70f54f2d74026c40978f7cecba +0 -0
  1393. data/test/dummy/tmp/cache/assets/D71/880/sprockets%2F93d1b5a9e73373de5c2183af65af6c5a +0 -0
  1394. data/test/dummy/tmp/cache/assets/D71/B90/sprockets%2F2ac87363cced8bcdb82f7a68a3942180 +0 -0
  1395. data/test/dummy/tmp/cache/assets/D71/CA0/sprockets%2F441e444a0921896e5ca39df6bba85daf +0 -0
  1396. data/test/dummy/tmp/cache/assets/D71/D20/sprockets%2F44fa6852eb45bdd4eeb672581afd4173 +0 -0
  1397. data/test/dummy/tmp/cache/assets/D71/D90/sprockets%2Fc1be07b5ef6dcb248f27302983e3da78 +0 -0
  1398. data/test/dummy/tmp/cache/assets/D71/EC0/sprockets%2Facdc138964872d68f28fcc8a19011abd +0 -0
  1399. data/test/dummy/tmp/cache/assets/D72/BF0/sprockets%2F9c42957dbb26c564074c2cdeca8a537e +0 -0
  1400. data/test/dummy/tmp/cache/assets/D72/C00/sprockets%2Fbcb0957c48f5623c9cd792f05cb0f40f +0 -0
  1401. data/test/dummy/tmp/cache/assets/D72/EF0/sprockets%2Fdf9869aee534851f6ed0fe330c00a38b +0 -0
  1402. data/test/dummy/tmp/cache/assets/D72/F50/sprockets%2F2c7eb7f81480d2ab9d809d049551cdcd +0 -0
  1403. data/test/dummy/tmp/cache/assets/D73/3F0/sprockets%2F09b4a9c1131740eba5d85fcf9c86b97a +0 -0
  1404. data/test/dummy/tmp/cache/assets/D73/500/sprockets%2F6bad7e877c436a3771db01b2a5fe6e59 +0 -0
  1405. data/test/dummy/tmp/cache/assets/D73/6E0/sprockets%2F1f4defb0e469096950900f0ad9c3fde4 +0 -0
  1406. data/test/dummy/tmp/cache/assets/D73/E20/sprockets%2F0376b58bf7bb3811f0e3a657acfba998 +0 -0
  1407. data/test/dummy/tmp/cache/assets/D74/DD0/sprockets%2Fc48e8b854fb60fa9959ceaca2700372b +0 -0
  1408. data/test/dummy/tmp/cache/assets/D75/6B0/sprockets%2Fec34bca59e6bb0e4ab0ef45953657992 +0 -0
  1409. data/test/dummy/tmp/cache/assets/D75/9E0/sprockets%2F9f9fc7d65b86108de260fe6a4145dac0 +0 -0
  1410. data/test/dummy/tmp/cache/assets/D75/B10/sprockets%2Fc260cb3f8f1a73334f57dd597e607bde +0 -0
  1411. data/test/dummy/tmp/cache/assets/D76/030/sprockets%2F7e8689ec6a9f3754a4aa660e303cbf4a +0 -0
  1412. data/test/dummy/tmp/cache/assets/D76/6D0/sprockets%2Fb26b1af7ea60d9acee387283707b5d88 +0 -0
  1413. data/test/dummy/tmp/cache/assets/D76/730/sprockets%2F50d9b58bb4b354677b4bd666ea5d74af +0 -0
  1414. data/test/dummy/tmp/cache/assets/D76/780/sprockets%2F409d92c3dab990d5815f39abdd2a9d65 +0 -0
  1415. data/test/dummy/tmp/cache/assets/D76/C80/sprockets%2F952307811ad5e9e8b540cf5e9cf08cea +0 -0
  1416. data/test/dummy/tmp/cache/assets/D76/CA0/sprockets%2F797920cdabaf2f8431968a34c2cbae79 +0 -0
  1417. data/test/dummy/tmp/cache/assets/D77/450/sprockets%2F736531ff578221daef7a2954eeccd8b3 +0 -0
  1418. data/test/dummy/tmp/cache/assets/D77/7E0/sprockets%2F4c9f2e2409700f1a1df69b32cff97dc9 +0 -0
  1419. data/test/dummy/tmp/cache/assets/D77/D30/sprockets%2Fabfa0603f55587e8c325e7d76c61dbe8 +0 -0
  1420. data/test/dummy/tmp/cache/assets/D77/FF0/sprockets%2F126c2e2ca6f5e8477c9525f46cdba7d5 +0 -0
  1421. data/test/dummy/tmp/cache/assets/D78/3F0/sprockets%2Fec9426b87dd0ce712959ad243d5eae38 +0 -0
  1422. data/test/dummy/tmp/cache/assets/D78/910/sprockets%2Fe87c3fc1c7f5b632bd6bc1785c56762c +0 -0
  1423. data/test/dummy/tmp/cache/assets/D78/D60/sprockets%2Feb6b4ca6b29b6f82ea665a74e67d8621 +0 -0
  1424. data/test/dummy/tmp/cache/assets/D78/DE0/sprockets%2F77704150a5a59b97997ebeeaa8d2aed2 +0 -0
  1425. data/test/dummy/tmp/cache/assets/D78/F50/sprockets%2F8cf8a8daeffdd217346b122e60b75759 +0 -0
  1426. data/test/dummy/tmp/cache/assets/D79/2F0/sprockets%2F4b9fd617fe0d6c7e5eb934a139507e3d +0 -0
  1427. data/test/dummy/tmp/cache/assets/D79/4D0/sprockets%2Fd9478c98121c5a4bfccf42c262d587fc +0 -0
  1428. data/test/dummy/tmp/cache/assets/D79/6B0/sprockets%2F3e47463ed984d55383d5ad268ca2addf +0 -0
  1429. data/test/dummy/tmp/cache/assets/D79/E80/sprockets%2F7d329345d1b9f914c87fc5e07ea9ab4b +0 -0
  1430. data/test/dummy/tmp/cache/assets/D7A/5C0/sprockets%2F6e2b202ee971a68c1e78eddf5658e53a +0 -0
  1431. data/test/dummy/tmp/cache/assets/D7A/D90/sprockets%2F5e731a54c86bfbaa18ba9e489178cf64 +0 -0
  1432. data/test/dummy/tmp/cache/assets/D7A/DC0/sprockets%2F9ecf82daa3876e1b15d3e3d89bc57813 +0 -0
  1433. data/test/dummy/tmp/cache/assets/D7A/FB0/sprockets%2F9e8fb3308fa9954235fee90380a1cded +0 -0
  1434. data/test/dummy/tmp/cache/assets/D7A/FC0/sprockets%2F3499c1cfa7502cc18809c9a562f4fdef +0 -0
  1435. data/test/dummy/tmp/cache/assets/D7B/070/sprockets%2F4468eeb1e7c877e0606fb6eb905bee16 +0 -0
  1436. data/test/dummy/tmp/cache/assets/D7B/620/sprockets%2F14de8cc7400d883c7df99aff9611fe02 +0 -0
  1437. data/test/dummy/tmp/cache/assets/D7B/B80/sprockets%2Ffe86b74dfdb9aa20f54329927f8f143a +0 -0
  1438. data/test/dummy/tmp/cache/assets/D7C/160/sprockets%2F6847e66cdafb094701f479a515ede5dd +0 -0
  1439. data/test/dummy/tmp/cache/assets/D7C/5C0/sprockets%2F8642e4dd80f0d9dd3ae49d9b37c4e706 +0 -0
  1440. data/test/dummy/tmp/cache/assets/D7C/620/sprockets%2Fa30b274099bbe2af59458e9f9e4d36fa +0 -0
  1441. data/test/dummy/tmp/cache/assets/D7C/750/sprockets%2F1f76d236fdf42a817bd84da719fde069 +0 -0
  1442. data/test/dummy/tmp/cache/assets/D7C/DF0/sprockets%2F916ee180cc9c6793b61f4f38abf45d6b +0 -0
  1443. data/test/dummy/tmp/cache/assets/D7C/F20/sprockets%2Fe675600f24e07aaf7b78cd7496b91fec +0 -0
  1444. data/test/dummy/tmp/cache/assets/D7E/1F0/sprockets%2Fb4b34372e8c99c986c7e8d710ef24cbb +0 -0
  1445. data/test/dummy/tmp/cache/assets/D7E/2A0/sprockets%2F1ce479f9423e748690a75abbabf8af84 +0 -0
  1446. data/test/dummy/tmp/cache/assets/D7E/480/sprockets%2F3e9652479d8cb3fc7227f03de632eeee +0 -0
  1447. data/test/dummy/tmp/cache/assets/D7E/920/sprockets%2Fbfbfce52970999ba5bc79cc70218916c +0 -0
  1448. data/test/dummy/tmp/cache/assets/D7E/CB0/sprockets%2Ffae2ff13071d0b5063e3bf4d00d2db04 +0 -0
  1449. data/test/dummy/tmp/cache/assets/D7E/FE0/sprockets%2Fcac370012fc5144c83bcf80d37b0ada0 +0 -0
  1450. data/test/dummy/tmp/cache/assets/D7F/1C0/sprockets%2F658bd54189f72edf43e1ba9cec37817c +0 -0
  1451. data/test/dummy/tmp/cache/assets/D7F/A60/sprockets%2F5c683951503f673cceffa6ba76f38b8d +0 -0
  1452. data/test/dummy/tmp/cache/assets/D80/020/sprockets%2Fe3517236fac013b096bd42c0acbcba91 +0 -0
  1453. data/test/dummy/tmp/cache/assets/D80/3B0/sprockets%2Fd574f0ceb59e292506dc7dc2f99d6b91 +0 -0
  1454. data/test/dummy/tmp/cache/assets/D80/490/sprockets%2F99f1cc7f18865312d1943fb46fffcc4c +0 -0
  1455. data/test/dummy/tmp/cache/assets/D80/770/sprockets%2F3e4ca52a2c3b1a5ac850ae1f180b4a94 +0 -0
  1456. data/test/dummy/tmp/cache/assets/D80/7A0/sprockets%2F4c2538f2ec0fcaa779ee881689ae3f35 +0 -0
  1457. data/test/dummy/tmp/cache/assets/D81/120/sprockets%2F75c7f18e61fa042b776ce2e5c3ff786f +0 -0
  1458. data/test/dummy/tmp/cache/assets/D81/680/sprockets%2Fbaa3df21aa283f51ad4662cd37226bb0 +0 -0
  1459. data/test/dummy/tmp/cache/assets/D81/B70/sprockets%2F44d160a7cd56a4d4b2e0d23a9c61aab1 +0 -0
  1460. data/test/dummy/tmp/cache/assets/D82/DC0/sprockets%2Fc274a32adcc9701740770ba90eb0abcb +0 -0
  1461. data/test/dummy/tmp/cache/assets/D83/210/sprockets%2Fa34a70ab6d47544d852ba0a40bd17dcb +0 -0
  1462. data/test/dummy/tmp/cache/assets/D83/F00/sprockets%2F32d5e28784379bb8cb47d9a3f8d27efa +0 -0
  1463. data/test/dummy/tmp/cache/assets/D84/0A0/sprockets%2F07fc0bfe2237a171b813aa147f3ced1a +0 -0
  1464. data/test/dummy/tmp/cache/assets/D84/1D0/sprockets%2F7c38669b45df4ddd2877c8da036b9c5e +0 -0
  1465. data/test/dummy/tmp/cache/assets/D85/050/sprockets%2Fa9b35663e7dc78eacde8d84ae3599163 +0 -0
  1466. data/test/dummy/tmp/cache/assets/D85/5A0/sprockets%2Fc2cbee1b5160e0e8b022933feb36ea30 +0 -0
  1467. data/test/dummy/tmp/cache/assets/D85/F20/sprockets%2F0a8cd63ad106a035ab2520df77a67add +0 -0
  1468. data/test/dummy/tmp/cache/assets/D86/7D0/sprockets%2Fe011a4ff534e607dead6d32fb2b0e141 +0 -0
  1469. data/test/dummy/tmp/cache/assets/D87/6D0/sprockets%2F51df69aad9a6f892254deb9d4c1992f8 +0 -0
  1470. data/test/dummy/tmp/cache/assets/D88/1B0/sprockets%2Fb5bb04fc812b607ce046a4b702be4c4f +0 -0
  1471. data/test/dummy/tmp/cache/assets/D88/3A0/sprockets%2F0b5fb77a9bfae45c35513bd100f2bc42 +0 -0
  1472. data/test/dummy/tmp/cache/assets/D88/700/sprockets%2F1f841bec6ffbe3858ce97e8191cf1739 +0 -0
  1473. data/test/dummy/tmp/cache/assets/D88/7E0/sprockets%2Fe9fedb2c5be893a15939dc65f684196b +0 -0
  1474. data/test/dummy/tmp/cache/assets/D8A/2C0/sprockets%2F6ec8da0142f240ce8a7e0b46aea363c1 +0 -0
  1475. data/test/dummy/tmp/cache/assets/D8A/370/sprockets%2Fb4600d72a29aba7a39c2ec58aa04f18b +0 -0
  1476. data/test/dummy/tmp/cache/assets/D8A/B90/sprockets%2F7506f75d60f93f9e8405ffb9cf85ddb2 +0 -0
  1477. data/test/dummy/tmp/cache/assets/D8A/BF0/sprockets%2F1967ce66d464496a6fab44ff8be55ef6 +0 -0
  1478. data/test/dummy/tmp/cache/assets/D8B/1B0/sprockets%2F199c350fee84b99097d56d624fded9db +0 -0
  1479. data/test/dummy/tmp/cache/assets/D8B/9B0/sprockets%2Ff74a2c4bb31c0925db6d4b0c5c13b75f +0 -0
  1480. data/test/dummy/tmp/cache/assets/D8C/760/sprockets%2Faa95031d02a72c4fea9fa62d5e05a2c8 +0 -0
  1481. data/test/dummy/tmp/cache/assets/D8C/9C0/sprockets%2F2e7c2cd86215800a37c4d4b1bf0bea5f +0 -0
  1482. data/test/dummy/tmp/cache/assets/D8C/D70/sprockets%2Fbdc87db6b545c8e89517be39d5b987d4 +0 -0
  1483. data/test/dummy/tmp/cache/assets/D8D/920/sprockets%2F40fcb20a15f6e3b5a26f9c1caa7e4229 +0 -0
  1484. data/test/dummy/tmp/cache/assets/D8D/B00/sprockets%2Fccae2730d232ca6d8f084c6c83a2dc50 +0 -0
  1485. data/test/dummy/tmp/cache/assets/D8D/C50/sprockets%2Fa0229d30e2113dbf6d3cd51c5e82ee6c +0 -0
  1486. data/test/dummy/tmp/cache/assets/D8E/3A0/sprockets%2Fd6744ef797ced49053db5c689e6b6f5c +0 -0
  1487. data/test/dummy/tmp/cache/assets/D8E/3E0/sprockets%2Faad382035de6adc39561143db7ba61de +0 -0
  1488. data/test/dummy/tmp/cache/assets/D8E/620/sprockets%2F3a32d43aefc5fa8f30af127b575250fa +0 -0
  1489. data/test/dummy/tmp/cache/assets/D8E/7B0/sprockets%2Fbc144de190faef75764a7badce006221 +0 -0
  1490. data/test/dummy/tmp/cache/assets/D8E/910/sprockets%2Fbbf8e4c05ca721c1cd18c17902256ade +0 -0
  1491. data/test/dummy/tmp/cache/assets/D8E/BF0/sprockets%2F48285c5acfe821822bac11d2fa01eed5 +0 -0
  1492. data/test/dummy/tmp/cache/assets/D8F/0A0/sprockets%2F77bfe7621130f0aedcdd12463eb019ce +0 -0
  1493. data/test/dummy/tmp/cache/assets/D8F/0C0/sprockets%2F35f9cb9a59df8869946829bcaa5ed1f4 +0 -0
  1494. data/test/dummy/tmp/cache/assets/D8F/4A0/sprockets%2Fec8facf81aea15d619953688978be79c +0 -0
  1495. data/test/dummy/tmp/cache/assets/D8F/560/sprockets%2Fc5c9ab0df2af9ce334428171ea41e13c +0 -0
  1496. data/test/dummy/tmp/cache/assets/D8F/570/sprockets%2F5cc898d5ed594786c7bc9a16f4d80d8d +0 -0
  1497. data/test/dummy/tmp/cache/assets/D8F/8A0/sprockets%2F5dfeb1f78f62586e3d97cb9e77758da0 +0 -0
  1498. data/test/dummy/tmp/cache/assets/D8F/C40/sprockets%2Fa76260381aff4aa0c8beea0404e95de2 +0 -0
  1499. data/test/dummy/tmp/cache/assets/D8F/FD0/sprockets%2F9a0c31b639daef509bbd370b4c9c33a2 +0 -0
  1500. data/test/dummy/tmp/cache/assets/D90/250/sprockets%2Fb3c1e05a514497c9a4f21afd92bdb16c +0 -0
  1501. data/test/dummy/tmp/cache/assets/D90/2D0/sprockets%2Fac8aa858f328c72e90dff5de97c59939 +0 -0
  1502. data/test/dummy/tmp/cache/assets/D91/6D0/sprockets%2Fba1b4327fa6a3b7b0c109974be38fca6 +0 -0
  1503. data/test/dummy/tmp/cache/assets/D91/E40/sprockets%2F6de404dc6bf82a712c0aa27fa7e1c780 +0 -0
  1504. data/test/dummy/tmp/cache/assets/D92/4A0/sprockets%2F3debefba0ccc221519757a1b9d1626a9 +0 -0
  1505. data/test/dummy/tmp/cache/assets/D92/940/sprockets%2Fa0318ca38842bddfaa28d2e05e429b9a +0 -0
  1506. data/test/dummy/tmp/cache/assets/D93/0F0/sprockets%2Fbae826e41e4d9c8365bc23eb610dea40 +0 -0
  1507. data/test/dummy/tmp/cache/assets/D93/2D0/sprockets%2F5dbb88793dba1bd62e601518a3a0ef5b +0 -0
  1508. data/test/dummy/tmp/cache/assets/D93/3B0/sprockets%2Fd0fb3bdcf317425a433a125c986b3dff +0 -0
  1509. data/test/dummy/tmp/cache/assets/D93/6F0/sprockets%2F77a6fdd2f442ad10ba0965ba1d3825fe +0 -0
  1510. data/test/dummy/tmp/cache/assets/D94/1A0/sprockets%2Fb4748c092e8a4c127bcfacb06cdc2735 +0 -0
  1511. data/test/dummy/tmp/cache/assets/D94/340/sprockets%2F2b4c67bcb0eeb242f0fe549f160b93a6 +0 -0
  1512. data/test/dummy/tmp/cache/assets/D94/D60/sprockets%2F5a0610c5e0dccce88e9a265b338ad0e6 +0 -0
  1513. data/test/dummy/tmp/cache/assets/D95/430/sprockets%2Fcf054ac65aa2c4b72d661fc32c898aa5 +0 -0
  1514. data/test/dummy/tmp/cache/assets/D95/7D0/sprockets%2F4183fb1fe706b4da17aac32b9529f3dc +0 -0
  1515. data/test/dummy/tmp/cache/assets/D95/A60/sprockets%2Fcade84652b25a95128cba5721b7bdb5e +0 -0
  1516. data/test/dummy/tmp/cache/assets/D95/D80/sprockets%2Fa6f6a003a0dcffb962626bc8f0c9472a +0 -0
  1517. data/test/dummy/tmp/cache/assets/D95/F00/sprockets%2F52867ee787fbdbff77f7488757dcb4d0 +0 -0
  1518. data/test/dummy/tmp/cache/assets/D96/7F0/sprockets%2F94770fcba2138db68f5731401cfadfaa +0 -0
  1519. data/test/dummy/tmp/cache/assets/D96/860/sprockets%2F4cf2bbf4cc9a137c11a688e3be3304d9 +0 -0
  1520. data/test/dummy/tmp/cache/assets/D96/C10/sprockets%2F620f6865aeb0de3c5cf8b305b13c7cb7 +0 -0
  1521. data/test/dummy/tmp/cache/assets/D96/CD0/sprockets%2Fccd138f1e601b65cd9036acff33656bb +0 -0
  1522. data/test/dummy/tmp/cache/assets/D97/2B0/sprockets%2F16a899a4b20af5f53cdd2870e1b0aed8 +0 -0
  1523. data/test/dummy/tmp/cache/assets/D97/4C0/sprockets%2F4d4aea86610bc9652c70455a6beafc4d +0 -0
  1524. data/test/dummy/tmp/cache/assets/D97/680/sprockets%2Fbcae9b5fae1163de31141bd7b94c7448 +0 -0
  1525. data/test/dummy/tmp/cache/assets/D98/1C0/sprockets%2F913efc21f3e14eb091215dbcd8ce828c +0 -0
  1526. data/test/dummy/tmp/cache/assets/D98/C70/sprockets%2Fcc07aad0b8893f828d852702aefcb2a3 +0 -0
  1527. data/test/dummy/tmp/cache/assets/D99/1B0/sprockets%2Fa9a048c3ff2aa66b848b6f26fc3ad115 +0 -0
  1528. data/test/dummy/tmp/cache/assets/D99/330/sprockets%2Ff01679ca9c88dd0a3eb6922b0b8f3bc0 +0 -0
  1529. data/test/dummy/tmp/cache/assets/D99/350/sprockets%2Fcb131a36809adce854add7d63e24d4a9 +0 -0
  1530. data/test/dummy/tmp/cache/assets/D99/C00/sprockets%2F0a5bfe4d93be7cca095d39aa4282d823 +0 -0
  1531. data/test/dummy/tmp/cache/assets/D99/CD0/sprockets%2Ffe0c5f4b8b52baa0f91870da12599a6d +0 -0
  1532. data/test/dummy/tmp/cache/assets/D99/DA0/sprockets%2F9b0c29e7e04a68212d8b5a18cea09ccf +0 -0
  1533. data/test/dummy/tmp/cache/assets/D9A/3A0/sprockets%2F8ff29ad200821eda99b44dc1f6d4bb07 +0 -0
  1534. data/test/dummy/tmp/cache/assets/D9A/A60/sprockets%2Fe9a83c04000c16f637df1fcc42fc75fe +0 -0
  1535. data/test/dummy/tmp/cache/assets/D9A/B20/sprockets%2Fcabbfbb982365500b12a89e74dfcb646 +0 -0
  1536. data/test/dummy/tmp/cache/assets/D9A/C60/sprockets%2Fed48e38b0d8bb6771b5dab8ca01b5394 +0 -0
  1537. data/test/dummy/tmp/cache/assets/D9A/CD0/sprockets%2F34197f2ea0ef70be8dbf5d06ebb23383 +0 -0
  1538. data/test/dummy/tmp/cache/assets/D9A/EB0/sprockets%2Ff1c3e9de535db0bc37661cdb8a6531d6 +0 -0
  1539. data/test/dummy/tmp/cache/assets/D9B/320/sprockets%2F8eab74b32567819bb7b0a1dc86ca44de +0 -0
  1540. data/test/dummy/tmp/cache/assets/D9B/6B0/sprockets%2Ffd3ec162a92d864e65f1b7ea48a4fa10 +0 -0
  1541. data/test/dummy/tmp/cache/assets/D9B/A20/sprockets%2Ffba9bbd836c523d5d213b78271eecd26 +0 -0
  1542. data/test/dummy/tmp/cache/assets/D9C/EA0/sprockets%2F48030f8791336eebb5b82feae03cdaf5 +0 -0
  1543. data/test/dummy/tmp/cache/assets/D9C/F00/sprockets%2Fc8555aabcf9d0b4294a04a771cb8d6d7 +0 -0
  1544. data/test/dummy/tmp/cache/assets/D9D/170/sprockets%2F37f702f1f3ad35b9022fc87fdce7de02 +0 -0
  1545. data/test/dummy/tmp/cache/assets/D9D/270/sprockets%2Fd46b30b7f25ca462cf19febb667c74e0 +0 -0
  1546. data/test/dummy/tmp/cache/assets/D9D/430/sprockets%2F41f9ffe403aca5202a7cbd6ad59954b9 +0 -0
  1547. data/test/dummy/tmp/cache/assets/D9D/5F0/sprockets%2Fbed736ea3de46fcc882a220801b6d9e4 +0 -0
  1548. data/test/dummy/tmp/cache/assets/D9E/1D0/sprockets%2F560a59af8d73b324fe2eca817c8a1fd3 +0 -0
  1549. data/test/dummy/tmp/cache/assets/D9E/C90/sprockets%2F9cd75b38f1c1f85bbdac2576ca9106b5 +0 -0
  1550. data/test/dummy/tmp/cache/assets/D9F/200/sprockets%2F22deb3ee0d99f7b2b283df5382e1ae81 +0 -0
  1551. data/test/dummy/tmp/cache/assets/D9F/3D0/sprockets%2Fc85d1920bbf4d6f3b27723fcd2fb7c55 +0 -0
  1552. data/test/dummy/tmp/cache/assets/D9F/6B0/sprockets%2F99e382158c248d70b4aebaeeab09d2e5 +0 -0
  1553. data/test/dummy/tmp/cache/assets/D9F/6F0/sprockets%2Fff261c15e6b97bf57e372f0de1ad571a +0 -0
  1554. data/test/dummy/tmp/cache/assets/D9F/7F0/sprockets%2Fd8fd738fc116ab5c8da0e4922cfb8180 +0 -0
  1555. data/test/dummy/tmp/cache/assets/D9F/FA0/sprockets%2Fe80956d9b1da8e7b1d82c2fa3b822ba8 +0 -0
  1556. data/test/dummy/tmp/cache/assets/DA0/1B0/sprockets%2F71e2cd8803aac9fb0bb4c47593cf17e8 +0 -0
  1557. data/test/dummy/tmp/cache/assets/DA0/600/sprockets%2F60bc139d8389408cd32adf4b0c5ffec7 +0 -0
  1558. data/test/dummy/tmp/cache/assets/DA0/9E0/sprockets%2F3d630a0f15dbca7ec3147399f7cc8fe4 +0 -0
  1559. data/test/dummy/tmp/cache/assets/DA1/530/sprockets%2F88a8bb9debb752ba06f07909db83e02d +0 -0
  1560. data/test/dummy/tmp/cache/assets/DA1/5D0/sprockets%2F5b78aef3109b5cc056d7457aa6c7f6ad +0 -0
  1561. data/test/dummy/tmp/cache/assets/DA1/670/sprockets%2Fabaa4bc9bf51726806c4673ed4b939dd +0 -0
  1562. data/test/dummy/tmp/cache/assets/DA1/710/sprockets%2Fcc28e7b96a94b2a571877b147fdecaa0 +0 -0
  1563. data/test/dummy/tmp/cache/assets/DA1/BF0/sprockets%2F17ae9d33d63c8600604fbec6d6eae96b +0 -0
  1564. data/test/dummy/tmp/cache/assets/DA1/F70/sprockets%2F3c4fc2ac1fcbca813776da7660f86f19 +0 -0
  1565. data/test/dummy/tmp/cache/assets/DA2/3D0/sprockets%2Fcf6daa7def3281188f60370190f6bfec +0 -0
  1566. data/test/dummy/tmp/cache/assets/DA2/9A0/sprockets%2F4bd1c9899ece1257adec0c553fc087b2 +0 -0
  1567. data/test/dummy/tmp/cache/assets/DA3/270/sprockets%2F44364fac7f6bd98fd42fc4252a0b68fa +0 -0
  1568. data/test/dummy/tmp/cache/assets/DA3/740/sprockets%2Fb0bbb3b4ab86b899a7578bdb35c66b93 +0 -0
  1569. data/test/dummy/tmp/cache/assets/DA3/980/sprockets%2Ff6b3f1c981ff90a9b7fa18b6c9061aa5 +0 -0
  1570. data/test/dummy/tmp/cache/assets/DA3/9F0/sprockets%2F5122955dfe6694bdc6b69cbea09d2cd1 +0 -0
  1571. data/test/dummy/tmp/cache/assets/DA3/DD0/sprockets%2Fe3beaef44fde6b7914027ace8284e254 +0 -0
  1572. data/test/dummy/tmp/cache/assets/DA4/2E0/sprockets%2F5a95962d5fe7bd801f6fdc2cb8608a0b +0 -0
  1573. data/test/dummy/tmp/cache/assets/DA4/450/sprockets%2F6f2bd50f9f1551ed8e00fd8b84f37c2c +0 -0
  1574. data/test/dummy/tmp/cache/assets/DA4/500/sprockets%2F91f01cc671b5bf8beab57bf9a07877a6 +0 -0
  1575. data/test/dummy/tmp/cache/assets/DA4/690/sprockets%2Fcf5ce84a4b7e3ac86923fa04f0f95b45 +0 -0
  1576. data/test/dummy/tmp/cache/assets/DA4/6B0/sprockets%2F76963040dbedfa3ae66bb7b68e290e5e +0 -0
  1577. data/test/dummy/tmp/cache/assets/DA4/A50/sprockets%2F5ccc3cb812b94b7b60841969a9ecbe7b +0 -0
  1578. data/test/dummy/tmp/cache/assets/DA4/B00/sprockets%2F34dacf66a509b781f91ffadf318f72d0 +0 -0
  1579. data/test/dummy/tmp/cache/assets/DA5/0E0/sprockets%2Fe61590dc98f1e532ea20e296c5fce7bd +0 -0
  1580. data/test/dummy/tmp/cache/assets/DA5/230/sprockets%2F2f7bd17dfa7af33d7decb98d54600817 +0 -0
  1581. data/test/dummy/tmp/cache/assets/DA5/600/sprockets%2Ff1ec238bda818f0f26645adeed808e46 +0 -0
  1582. data/test/dummy/tmp/cache/assets/DA5/830/sprockets%2Fefce0b2d75e80d1d17b6db8598841ed2 +0 -0
  1583. data/test/dummy/tmp/cache/assets/DA5/920/sprockets%2F17fef15ed3d8c1147570663a93efedea +0 -0
  1584. data/test/dummy/tmp/cache/assets/DA5/AC0/sprockets%2Fa86f78f952d2c15bcd9304cce3169dda +0 -0
  1585. data/test/dummy/tmp/cache/assets/DA5/DE0/sprockets%2F1db1a28dc497e292c67e517bbbf9cc66 +0 -0
  1586. data/test/dummy/tmp/cache/assets/DA6/420/sprockets%2F27f13ec97d9f72f8f4c0dba16ac66a09 +0 -0
  1587. data/test/dummy/tmp/cache/assets/DA6/CD0/sprockets%2Fc70b7f4eecae952495d975f1d931bca1 +0 -0
  1588. data/test/dummy/tmp/cache/assets/DA7/010/sprockets%2F26bd9368e57b2fcfeeb0e7b334a8c717 +0 -0
  1589. data/test/dummy/tmp/cache/assets/DA8/070/sprockets%2F296661df51c2ff0feab92f6e2e4915ed +0 -0
  1590. data/test/dummy/tmp/cache/assets/DA9/140/sprockets%2F5bb8a68c0d5973f04871bd6f9d15edea +0 -0
  1591. data/test/dummy/tmp/cache/assets/DA9/3F0/sprockets%2Fa1397cdaec7c429992cd36f0ea7865cb +0 -0
  1592. data/test/dummy/tmp/cache/assets/DA9/780/sprockets%2F673abfc38f421c994b19c6784bcfaaf5 +0 -0
  1593. data/test/dummy/tmp/cache/assets/DA9/C20/sprockets%2Ff74b8a618cb8cfe2f5b92964b5f622ab +0 -0
  1594. data/test/dummy/tmp/cache/assets/DAA/010/sprockets%2Fa9e3589f157d67a2109a09ce9cbbedc7 +0 -0
  1595. data/test/dummy/tmp/cache/assets/DAA/420/sprockets%2F6779ef7b8e5c2c362cfd5d5fa472e1b1 +0 -0
  1596. data/test/dummy/tmp/cache/assets/DAA/430/sprockets%2Fa7e693e8bff8091ac1765aeee32f607c +0 -0
  1597. data/test/dummy/tmp/cache/assets/DAB/300/sprockets%2F5ef1bc4a2f2ad76ca42d031263ad10da +0 -0
  1598. data/test/dummy/tmp/cache/assets/DAB/920/sprockets%2F047a9da6b427dd9d7093799fad63aceb +0 -0
  1599. data/test/dummy/tmp/cache/assets/DAB/B00/sprockets%2F5286678a74e7bcc66e0d3c7c7d2db5fb +0 -0
  1600. data/test/dummy/tmp/cache/assets/DAB/C10/sprockets%2F7b9f07636a7384e6fe0c4dcf0ef2b8e4 +0 -0
  1601. data/test/dummy/tmp/cache/assets/DAB/E70/sprockets%2F6ae05914a60e6c756a6df3be72f88edf +0 -0
  1602. data/test/dummy/tmp/cache/assets/DAB/F50/sprockets%2F18c6d0d546ef662f2388efc86b4eac4c +0 -0
  1603. data/test/dummy/tmp/cache/assets/DAD/4A0/sprockets%2Fd5eeb3e15f9d38b73edd7f0174c36e49 +0 -0
  1604. data/test/dummy/tmp/cache/assets/DAD/5C0/sprockets%2F96f23affbee06df4d7380ee39a0d7882 +0 -0
  1605. data/test/dummy/tmp/cache/assets/DAE/480/sprockets%2F6354abfeafe4a885fb3276f93e93d19a +0 -0
  1606. data/test/dummy/tmp/cache/assets/DAE/590/sprockets%2F19c1f0d007af044ead90b191cba50dad +0 -0
  1607. data/test/dummy/tmp/cache/assets/DAE/6F0/sprockets%2F8089f2cadd8367c9581a2caf7b3a7e7f +0 -0
  1608. data/test/dummy/tmp/cache/assets/DAE/780/sprockets%2F4ee60f5a62e8e91e9478c79de4eab1a3 +0 -0
  1609. data/test/dummy/tmp/cache/assets/DAF/F00/sprockets%2Fa2be30c90a2711cc8c2aa26bbaa09b97 +0 -0
  1610. data/test/dummy/tmp/cache/assets/DB0/B20/sprockets%2F95b678a12265fde16b9ee09bc67aeff6 +0 -0
  1611. data/test/dummy/tmp/cache/assets/DB0/BF0/sprockets%2F52e4cdf37aa489ff6c138dedf036588d +0 -0
  1612. data/test/dummy/tmp/cache/assets/DB1/5A0/sprockets%2Faf7ed26f93196cf64e5b4a2e4c1ef679 +0 -0
  1613. data/test/dummy/tmp/cache/assets/DB1/6D0/sprockets%2Fd7990d5c07f95d0ee1cb9d5e6e5b818c +0 -0
  1614. data/test/dummy/tmp/cache/assets/DB1/C80/sprockets%2Fa2d1a10a3cc780fd30127b2be96ddfa2 +0 -0
  1615. data/test/dummy/tmp/cache/assets/DB2/1F0/sprockets%2Fca6346c5717c1efd6fae57773f94ee8a +0 -0
  1616. data/test/dummy/tmp/cache/assets/DB2/480/sprockets%2Fa249ccdcac57daf829713de88e3629f8 +0 -0
  1617. data/test/dummy/tmp/cache/assets/DB2/850/sprockets%2F9d6e12a0e28cc9ded4e859613cf75f6e +0 -0
  1618. data/test/dummy/tmp/cache/assets/DB2/9D0/sprockets%2F37bbd81e0c7ddf7c7668e674925eaca9 +0 -0
  1619. data/test/dummy/tmp/cache/assets/DB3/D90/sprockets%2Fbe688e19f9d8787de8ec0006acde4a09 +0 -0
  1620. data/test/dummy/tmp/cache/assets/DB4/900/sprockets%2F43e97d8f55fde7b0e62e76e0f4736ade +0 -0
  1621. data/test/dummy/tmp/cache/assets/DB5/B90/sprockets%2Fc8101a824bdab56d3eb5ae001ce5d85a +0 -0
  1622. data/test/dummy/tmp/cache/assets/DB5/E20/sprockets%2Ff5fb95e43209af088c7dd96e2893acfd +0 -0
  1623. data/test/dummy/tmp/cache/assets/DB5/F10/sprockets%2F63d5e828a89f86e9fde306f0a91b5edc +0 -0
  1624. data/test/dummy/tmp/cache/assets/DB5/FA0/sprockets%2Fe59881d2c83e9f94c821bc4ea5e7d4fd +0 -0
  1625. data/test/dummy/tmp/cache/assets/DB6/3C0/sprockets%2F41a8bd3493aeb1b8181ad4dea603ba1f +0 -0
  1626. data/test/dummy/tmp/cache/assets/DB6/6D0/sprockets%2F0cf69fe4ee20fa8ff7e73686298d71ab +0 -0
  1627. data/test/dummy/tmp/cache/assets/DB6/710/sprockets%2Ff53e9d96ae4808ad0f9e09ab4ef78f80 +0 -0
  1628. data/test/dummy/tmp/cache/assets/DB6/8F0/sprockets%2Fb242c82a350bc6f50358da8ac0ebca6b +0 -0
  1629. data/test/dummy/tmp/cache/assets/DB7/0A0/sprockets%2F53d8d17b9898dfb37acce79bfc41655e +0 -0
  1630. data/test/dummy/tmp/cache/assets/DB7/580/sprockets%2F87bd872b8fbe7ff4435ef9ba1c976b17 +0 -0
  1631. data/test/dummy/tmp/cache/assets/DB7/670/sprockets%2F14afe7f2ff7c6a35f6f5dd27e95593f4 +0 -0
  1632. data/test/dummy/tmp/cache/assets/DB8/680/sprockets%2F3f30bdb482b12f9312d512dbbdefa3c6 +0 -0
  1633. data/test/dummy/tmp/cache/assets/DB8/780/sprockets%2F293e460dfaf0bb2cb2e3b744e04d22eb +0 -0
  1634. data/test/dummy/tmp/cache/assets/DB8/A60/sprockets%2F90947efd6658c7ea3ea6a9a9be1f695b +0 -0
  1635. data/test/dummy/tmp/cache/assets/DB9/620/sprockets%2F6f7ce966193908fe7a87bde7fe1f1c1d +0 -0
  1636. data/test/dummy/tmp/cache/assets/DB9/FC0/sprockets%2F33685a23d3dcb463b10ebada56fbde05 +0 -0
  1637. data/test/dummy/tmp/cache/assets/DBA/7F0/sprockets%2F4f7fd7b68b8bc29c67fa996e37eaf512 +0 -0
  1638. data/test/dummy/tmp/cache/assets/DBB/620/sprockets%2F57cc1cefcb1e1050ac7b66e7aba68141 +0 -0
  1639. data/test/dummy/tmp/cache/assets/DBB/7D0/sprockets%2Fdd2e01f5a1c3dd20e2b5bd758a24e47c +0 -0
  1640. data/test/dummy/tmp/cache/assets/DBC/DF0/sprockets%2Fd1ff56754c1bf2a8d4082abe2f00adb4 +0 -0
  1641. data/test/dummy/tmp/cache/assets/DBC/EF0/sprockets%2F01cb6721c46251afa9fc1bbea72ffa64 +0 -0
  1642. data/test/dummy/tmp/cache/assets/DBD/080/sprockets%2F039ace5986a3cbf4cca0b0a753bc71a6 +0 -0
  1643. data/test/dummy/tmp/cache/assets/DBE/100/sprockets%2F52dc0ae06aba8ebe4e3d68273fa4223d +0 -0
  1644. data/test/dummy/tmp/cache/assets/DBE/430/sprockets%2Fe45190f40a462e86ae1ee01f3bbcad8a +0 -0
  1645. data/test/dummy/tmp/cache/assets/DC0/CB0/sprockets%2Fdd26802f0ecb845eecd6f013ac3be046 +0 -0
  1646. data/test/dummy/tmp/cache/assets/DC1/690/sprockets%2F2e1b1b2e39e5d5f6e3b1a0ceb1e8494a +0 -0
  1647. data/test/dummy/tmp/cache/assets/DC1/730/sprockets%2F8223daa042ae1bc6dc5d7d0c8d3994bc +0 -0
  1648. data/test/dummy/tmp/cache/assets/DC1/790/sprockets%2Fa3dedcf234a05755b75f34ba9230eebc +0 -0
  1649. data/test/dummy/tmp/cache/assets/DC1/C20/sprockets%2Fb60b7b3aeb56bd55b67183b6f151ecca +0 -0
  1650. data/test/dummy/tmp/cache/assets/DC3/240/sprockets%2Fabcd9c44d21b934ddfc8c3a50e2720e6 +0 -0
  1651. data/test/dummy/tmp/cache/assets/DC3/7E0/sprockets%2Fe45adb8409222cdd8d5b8a3ad9bb23c3 +0 -0
  1652. data/test/dummy/tmp/cache/assets/DC3/C90/sprockets%2Ffcfacdb2c844629dc5fa6c5b221521f2 +0 -0
  1653. data/test/dummy/tmp/cache/assets/DC4/600/sprockets%2Fa0794a1ac15dbb57b803dbdce2069ff7 +0 -0
  1654. data/test/dummy/tmp/cache/assets/DC4/8D0/sprockets%2Feca7e66a696f39f90e4bd9ef794449ce +0 -0
  1655. data/test/dummy/tmp/cache/assets/DC5/500/sprockets%2F25ac94fa819bdb1fad28f4420fd4b90a +0 -0
  1656. data/test/dummy/tmp/cache/assets/DC5/5F0/sprockets%2F9d4cc0ae7ac214bb22c7cf455d06b9c9 +0 -0
  1657. data/test/dummy/tmp/cache/assets/DC5/660/sprockets%2F637431e1c8fffeaafc23f021bd49fa06 +0 -0
  1658. data/test/dummy/tmp/cache/assets/DC5/A10/sprockets%2Fd881389b05ed0406582ceffa1bbcbcb3 +0 -0
  1659. data/test/dummy/tmp/cache/assets/DC6/2C0/sprockets%2Fcf90f72308e31b4d3da7881bb4eadf2a +0 -0
  1660. data/test/dummy/tmp/cache/assets/DC6/7C0/sprockets%2Fb408df7a822c70a0924e0cdf6c8fe2ca +0 -0
  1661. data/test/dummy/tmp/cache/assets/DC6/E10/sprockets%2Fe6e39c030d68abc49573c0f0aa6cb7fa +0 -0
  1662. data/test/dummy/tmp/cache/assets/DC7/3E0/sprockets%2F49acd055a0eb8f438d6744cf0b7ca0bf +0 -0
  1663. data/test/dummy/tmp/cache/assets/DC7/690/sprockets%2Fec0ca84ce609d186fbdd278b5412cc2b +0 -0
  1664. data/test/dummy/tmp/cache/assets/DC7/DB0/sprockets%2Fbe9e97364bfc2bf9e88d96a683fa95c9 +0 -0
  1665. data/test/dummy/tmp/cache/assets/DC8/2F0/sprockets%2F15c5ad9491aa5ef9fe4aef6333fa12c0 +0 -0
  1666. data/test/dummy/tmp/cache/assets/DC9/260/sprockets%2F6f2cc5570eaa6b0ddaccb4782a96a684 +0 -0
  1667. data/test/dummy/tmp/cache/assets/DC9/7A0/sprockets%2F4d0478e03772fb22dcedcd528eba9dc0 +0 -0
  1668. data/test/dummy/tmp/cache/assets/DC9/7D0/sprockets%2F0a990ca7fd23339b974fcb0d5ecbe51b +0 -0
  1669. data/test/dummy/tmp/cache/assets/DCA/010/sprockets%2Ffe4cffd465e65dfa0741c610c5b62e0e +0 -0
  1670. data/test/dummy/tmp/cache/assets/DCA/020/sprockets%2Fcb51f5b40a4416eedf63486ccd0f1d8f +0 -0
  1671. data/test/dummy/tmp/cache/assets/DCA/480/sprockets%2Fce2f69455c89a3117ecebb42c0e2fa2f +0 -0
  1672. data/test/dummy/tmp/cache/assets/DCB/290/sprockets%2F6d23665c4ac5dab13d57ed99ab48cdb1 +0 -0
  1673. data/test/dummy/tmp/cache/assets/DCB/330/sprockets%2F22d6adfe7b8aa0f460fad284a7fb7374 +0 -0
  1674. data/test/dummy/tmp/cache/assets/DCB/A90/sprockets%2Fd005b3e7e4adbe5785d5b2ac2d9279cb +0 -0
  1675. data/test/dummy/tmp/cache/assets/DCB/D80/sprockets%2Febb778f78eae8e09af0f4002a23d5d2b +0 -0
  1676. data/test/dummy/tmp/cache/assets/DCC/F40/sprockets%2Fdc3342c548fc7d3c4f4e27732b5acfea +0 -0
  1677. data/test/dummy/tmp/cache/assets/DCD/370/sprockets%2F60693ba76fe331fd6b3d8ec90df31aae +0 -0
  1678. data/test/dummy/tmp/cache/assets/DCD/390/sprockets%2Fdcd461b67aec99b76eea270a9ad2c046 +0 -0
  1679. data/test/dummy/tmp/cache/assets/DCD/730/sprockets%2Fe577d2f2df0ce1516b2bdfa9fe0909e0 +0 -0
  1680. data/test/dummy/tmp/cache/assets/DCD/740/sprockets%2Fc80244c564e19eada1cdddf5f6d0d962 +0 -0
  1681. data/test/dummy/tmp/cache/assets/DCD/8D0/sprockets%2Fbf36f09be83b4d0986ad23ea4d1f32df +0 -0
  1682. data/test/dummy/tmp/cache/assets/DCD/CC0/sprockets%2Fe03ede3c44cb227a99f3cd71e5b4c47d +0 -0
  1683. data/test/dummy/tmp/cache/assets/DCE/170/sprockets%2F2576bc54ebe0a91592bbdbf3f5c8bb57 +0 -0
  1684. data/test/dummy/tmp/cache/assets/DCE/1C0/sprockets%2F58cc5eb1cb2a47c8067c940caecf449d +0 -0
  1685. data/test/dummy/tmp/cache/assets/DCE/820/sprockets%2F940e9d2a49d11f78bcc06fda4bfda248 +0 -0
  1686. data/test/dummy/tmp/cache/assets/DCE/8C0/sprockets%2Fc158975fbd6211be45d30dee9a8cca4d +0 -0
  1687. data/test/dummy/tmp/cache/assets/DCE/BA0/sprockets%2F57c5ecddc82aa706b1e64691a8a5bcc9 +0 -0
  1688. data/test/dummy/tmp/cache/assets/DCF/900/sprockets%2Fb4dc2a3c5d5822e5cc13ee7098e9ec2e +0 -0
  1689. data/test/dummy/tmp/cache/assets/DCF/C10/sprockets%2Fa4bb64e1e51df7485f5adebce9f02931 +0 -0
  1690. data/test/dummy/tmp/cache/assets/DCF/C70/sprockets%2F1be6a1fdd8c5b86062d572c781feded0 +0 -0
  1691. data/test/dummy/tmp/cache/assets/DCF/E20/sprockets%2Fd24ee80741a60bd4db8f59b784e3ccda +0 -0
  1692. data/test/dummy/tmp/cache/assets/DD0/220/sprockets%2Fb658b3e8db3e47d0da67a3becde17375 +0 -0
  1693. data/test/dummy/tmp/cache/assets/DD1/140/sprockets%2Fc8a6d9aab9a9cfc737e46f20a91f41c2 +0 -0
  1694. data/test/dummy/tmp/cache/assets/DD1/150/sprockets%2F7ebeb5cbe309be7f60c047b5ed9c7604 +0 -0
  1695. data/test/dummy/tmp/cache/assets/DD1/3D0/sprockets%2F572c7b6bfb93e3fa7c505ff241c4dc6e +0 -0
  1696. data/test/dummy/tmp/cache/assets/DD1/4A0/sprockets%2Fd1fd81d46b69d255ebc7ab7f3f96a03a +0 -0
  1697. data/test/dummy/tmp/cache/assets/DD2/D80/sprockets%2F0f57dc9efdb7713ba71f3a11fd77a9f2 +0 -0
  1698. data/test/dummy/tmp/cache/assets/DD2/D90/sprockets%2Facc08ab37871b8576bfcb992aedaf228 +0 -0
  1699. data/test/dummy/tmp/cache/assets/DD3/420/sprockets%2F18eb52a440eeffad6245d895ebc2df83 +0 -0
  1700. data/test/dummy/tmp/cache/assets/DD3/6A0/sprockets%2F7bee04f1c6d8b4a20768ba6829ebfe2f +0 -0
  1701. data/test/dummy/tmp/cache/assets/DD3/870/sprockets%2Fe6d24315ae5f3ed72de4fadcff905707 +0 -0
  1702. data/test/dummy/tmp/cache/assets/DD4/5B0/sprockets%2F7cb342f4400ffd5dedf8a2928297eadc +0 -0
  1703. data/test/dummy/tmp/cache/assets/DD4/870/sprockets%2F59bbd1ff0cfe843a84b13fe45b38c76d +0 -0
  1704. data/test/dummy/tmp/cache/assets/DD4/9C0/sprockets%2F1c59629d3587ddfba16a5cfd49bbd6b2 +0 -0
  1705. data/test/dummy/tmp/cache/assets/DD5/3E0/sprockets%2F7190b9a5ea395d5b4c49fb66abedf26c +0 -0
  1706. data/test/dummy/tmp/cache/assets/DD5/7E0/sprockets%2Feb00bf776a7c5c7197fd31b9ff96aa0e +0 -0
  1707. data/test/dummy/tmp/cache/assets/DD5/CA0/sprockets%2Fdb08cc2eaa8dff06c01ab1c79f777798 +0 -0
  1708. data/test/dummy/tmp/cache/assets/DD5/D40/sprockets%2F8a656fbe5efc00f64f2451fff1c21fe9 +0 -0
  1709. data/test/dummy/tmp/cache/assets/DD6/240/sprockets%2Fd493a33ef4e37bda3f0f58778cfabc81 +0 -0
  1710. data/test/dummy/tmp/cache/assets/DD6/3E0/sprockets%2F886b6fcf1fe02327f797bdf023ae2ece +0 -0
  1711. data/test/dummy/tmp/cache/assets/DD6/7B0/sprockets%2F200d82ceede3f5f4d95f484da882ccc4 +0 -0
  1712. data/test/dummy/tmp/cache/assets/DD6/B70/sprockets%2F0e7a0e3c9a36b1fcf3179e347e9f7fad +0 -0
  1713. data/test/dummy/tmp/cache/assets/DD7/5C0/sprockets%2F3ffcd3a6bf1ff82c11e3996b461ef7d4 +0 -0
  1714. data/test/dummy/tmp/cache/assets/DD7/600/sprockets%2Fcc47edff1a4a983589bb45bce09533ed +0 -0
  1715. data/test/dummy/tmp/cache/assets/DD7/EB0/sprockets%2Fdea8eca4417d57fbd76f8a261591ced4 +0 -0
  1716. data/test/dummy/tmp/cache/assets/DD8/5C0/sprockets%2F9dd7bcb46a4b58ee446353a9cdaf93f2 +0 -0
  1717. data/test/dummy/tmp/cache/assets/DD9/180/sprockets%2F388c94f98c59eddc13b4d7aac6b4ed12 +0 -0
  1718. data/test/dummy/tmp/cache/assets/DD9/530/sprockets%2Fe9cbd5b6d7b21568cfb4f7990c7b50eb +0 -0
  1719. data/test/dummy/tmp/cache/assets/DD9/AA0/sprockets%2Ff96cdb075b4fc5b6eabb92832f6ad758 +0 -0
  1720. data/test/dummy/tmp/cache/assets/DD9/F90/sprockets%2Ff09bdb745c8fa4987aa1ffcd6370c94b +0 -0
  1721. data/test/dummy/tmp/cache/assets/DDA/DD0/sprockets%2Fa38de1f37e66b69841acb54dafa767fd +0 -0
  1722. data/test/dummy/tmp/cache/assets/DDB/140/sprockets%2F7815fdf1a6a74db4fca71ff6537ced67 +0 -0
  1723. data/test/dummy/tmp/cache/assets/DDB/7A0/sprockets%2Fad8a674f4c715c6f8e5c429a4a7fd3cf +0 -0
  1724. data/test/dummy/tmp/cache/assets/DDB/FB0/sprockets%2F7f49dcacda9a63b62664c3f2c99b5d5e +0 -0
  1725. data/test/dummy/tmp/cache/assets/DDC/AD0/sprockets%2Fec9bbacc8283e9bbee2f115395b19f89 +0 -0
  1726. data/test/dummy/tmp/cache/assets/DDC/B10/sprockets%2Fe5b56878aa4fd0ace646923aefbf5e67 +0 -0
  1727. data/test/dummy/tmp/cache/assets/DDD/E10/sprockets%2Fd7292f5eb3a7b1f583efbf05aef567d9 +0 -0
  1728. data/test/dummy/tmp/cache/assets/DDE/450/sprockets%2Fdc1aabe992a97f95a43ce5d8364ff9d1 +0 -0
  1729. data/test/dummy/tmp/cache/assets/DDE/C00/sprockets%2Ffb5947d8ea5a7d6c08c71b3c9d7a88cb +0 -0
  1730. data/test/dummy/tmp/cache/assets/DDE/EE0/sprockets%2Ffd9c004bfe79ad598e56e06c8b2b2d8f +0 -0
  1731. data/test/dummy/tmp/cache/assets/DDF/030/sprockets%2F5c11fc96929a039f8e3dcc914e9ddfdb +0 -0
  1732. data/test/dummy/tmp/cache/assets/DDF/070/sprockets%2Ffe4d825f88eadf5580f2db2f45c3df28 +0 -0
  1733. data/test/dummy/tmp/cache/assets/DDF/3F0/sprockets%2F06db623ed4f5ff5f487dbcade39f9516 +0 -0
  1734. data/test/dummy/tmp/cache/assets/DDF/410/sprockets%2F1826fbc85f5b9e68db10ad8f75f60edf +0 -0
  1735. data/test/dummy/tmp/cache/assets/DDF/730/sprockets%2F762933e9883e8f8d40d4cbeafcb53eea +0 -0
  1736. data/test/dummy/tmp/cache/assets/DE0/640/sprockets%2Fc98e6e5b9c79facfc4bbce3564076f23 +0 -0
  1737. data/test/dummy/tmp/cache/assets/DE0/F70/sprockets%2Fb3112af1224a5b8be1b1eadaa49fd9c1 +0 -0
  1738. data/test/dummy/tmp/cache/assets/DE0/FB0/sprockets%2F369e344b6dbe8c3c22f896cba9cfc66f +0 -0
  1739. data/test/dummy/tmp/cache/assets/DE1/040/sprockets%2F198a17bea76fa82f54caaf8f9479ace6 +0 -0
  1740. data/test/dummy/tmp/cache/assets/DE1/350/sprockets%2F03aaaffb965e1c7de8eed8436c6c9974 +0 -0
  1741. data/test/dummy/tmp/cache/assets/DE1/470/sprockets%2Fa462020f67b203bacddafe3f1aa28a5f +0 -0
  1742. data/test/dummy/tmp/cache/assets/DE2/050/sprockets%2F90aa2105b560eedf62bcfd2ae1bbc704 +0 -0
  1743. data/test/dummy/tmp/cache/assets/DE3/D50/sprockets%2Fc7dc146ca6eeb2c39ca01ebae12b2137 +0 -0
  1744. data/test/dummy/tmp/cache/assets/DE4/110/sprockets%2F237945ffd1fb5dcdbfbe8976f08a564f +0 -0
  1745. data/test/dummy/tmp/cache/assets/DE6/AF0/sprockets%2F4f9a6eef855dc05a7bad0e9f9e369f09 +0 -0
  1746. data/test/dummy/tmp/cache/assets/DE7/3B0/sprockets%2F55fc91edc7ee6e5f818993cbddb6b707 +0 -0
  1747. data/test/dummy/tmp/cache/assets/DE7/550/sprockets%2Ffff04b0980f1fbe9ece54cd8ca779867 +0 -0
  1748. data/test/dummy/tmp/cache/assets/DE7/E00/sprockets%2Fd6f7ce392ee17fadc94867d87cfb614c +0 -0
  1749. data/test/dummy/tmp/cache/assets/DE8/600/sprockets%2F0ae37b3d2eaa3dd72acae269621d33ce +0 -0
  1750. data/test/dummy/tmp/cache/assets/DE8/980/sprockets%2Fea9daa72d1acd0886cc064d0ea6c4a30 +0 -0
  1751. data/test/dummy/tmp/cache/assets/DE9/7D0/sprockets%2F67b885f5e1f1f9f8f79e5fcbaec901b4 +0 -0
  1752. data/test/dummy/tmp/cache/assets/DEB/FF0/sprockets%2F5564febae75230b1a7cde854caacac30 +0 -0
  1753. data/test/dummy/tmp/cache/assets/DEC/3E0/sprockets%2Fce67e335653a9bf4d7ab6f88efd97f2f +0 -0
  1754. data/test/dummy/tmp/cache/assets/DEE/D90/sprockets%2Fdd6e2c58d110f54bed0d5addff1d1450 +0 -0
  1755. data/test/dummy/tmp/cache/assets/DEF/3D0/sprockets%2Fb0a4bee6c0f8f29c56b401e0b9c1eeb3 +0 -0
  1756. data/test/dummy/tmp/cache/assets/DEF/9D0/sprockets%2Faeefda7b5cf4db4b272db1e1462a1187 +0 -0
  1757. data/test/dummy/tmp/cache/assets/DEF/D90/sprockets%2Faa14d177b0baa085be7c5d95c11ffd5d +0 -0
  1758. data/test/dummy/tmp/cache/assets/DEF/FD0/sprockets%2F7bc9eed2e2f88956c62fdbafd67c5895 +0 -0
  1759. data/test/dummy/tmp/cache/assets/DF0/2C0/sprockets%2Fe0dcb8b8cbe803c3bc30d8026bd7e1b8 +0 -0
  1760. data/test/dummy/tmp/cache/assets/DF0/CB0/sprockets%2F2b2884f2950bbb31aec8a3ef1e16cbdd +0 -0
  1761. data/test/dummy/tmp/cache/assets/DF4/610/sprockets%2Fc7e36bac8572aeba8c6a1edd601822bf +0 -0
  1762. data/test/dummy/tmp/cache/assets/DF5/0C0/sprockets%2Faf8105cfdb7ceae04b099c4a2f654ce1 +0 -0
  1763. data/test/dummy/tmp/cache/assets/DF5/900/sprockets%2F5a0f8dc23f4df0c2c8d7c20ed444de3d +0 -0
  1764. data/test/dummy/tmp/cache/assets/DF6/350/sprockets%2F3ae6e69b8a4b3ba62af4e31faa8eb382 +0 -0
  1765. data/test/dummy/tmp/cache/assets/DF6/FB0/sprockets%2Fe7e2f2f538ab80ed2c14ead2ed6ad632 +0 -0
  1766. data/test/dummy/tmp/cache/assets/DF7/110/sprockets%2F0654cdd8dfa5adb61e2029fefe5f50c0 +0 -0
  1767. data/test/dummy/tmp/cache/assets/DF7/1A0/sprockets%2Fe06f798264ab1f1bdb33ecd1d7dcc1e5 +0 -0
  1768. data/test/dummy/tmp/cache/assets/DF7/7B0/sprockets%2F1acc6cb5b0fefc7a4c759d0435f048dc +0 -0
  1769. data/test/dummy/tmp/cache/assets/DF8/0E0/sprockets%2F4ecc72bcaac9b13fd4dc0271f83f396c +0 -0
  1770. data/test/dummy/tmp/cache/assets/DF8/570/sprockets%2Fd956ef1a15caba08edb2fc63c569f20d +0 -0
  1771. data/test/dummy/tmp/cache/assets/DFA/3A0/sprockets%2Fd7bf8feb92a426ccb6ca490ad190e6c2 +0 -0
  1772. data/test/dummy/tmp/cache/assets/DFB/030/sprockets%2F5d0ebb03017d6de57cd82defc92d5fc3 +0 -0
  1773. data/test/dummy/tmp/cache/assets/DFB/E90/sprockets%2Ff7bd5fbb19ef32fc5a396d8012fac3f0 +0 -0
  1774. data/test/dummy/tmp/cache/assets/DFB/EA0/sprockets%2Fdef5d6e8216d65afcb1823fe1fc2fd10 +0 -0
  1775. data/test/dummy/tmp/cache/assets/DFC/140/sprockets%2F12db5c0eacf95d8aedc97278adc82b22 +0 -0
  1776. data/test/dummy/tmp/cache/assets/DFC/9D0/sprockets%2F38fd8e0a2fde3b853f2a24571cd2dfdd +0 -0
  1777. data/test/dummy/tmp/cache/assets/DFD/040/sprockets%2Fc8b4b89a581fb9cd5799ab2aa2db00fc +0 -0
  1778. data/test/dummy/tmp/cache/assets/DFD/340/sprockets%2Fdfdc89a3cdea6f028b1e6625ba1ec557 +0 -0
  1779. data/test/dummy/tmp/cache/assets/DFE/3C0/sprockets%2Fe7c824dbbee345aa5a66a56ebe82a29e +0 -0
  1780. data/test/dummy/tmp/cache/assets/DFE/BA0/sprockets%2Fbc18f4ba621d7c1d6dab692652fb8fdf +0 -0
  1781. data/test/dummy/tmp/cache/assets/DFF/560/sprockets%2F5c1cedb5538de9d0c4dc9fdb62554fa1 +0 -0
  1782. data/test/dummy/tmp/cache/assets/DFF/F10/sprockets%2Fc1f5acff5273a8ba68915bffd2f07e0d +0 -0
  1783. data/test/dummy/tmp/cache/assets/E00/000/sprockets%2Faadaab3c3a4494929aed53991fe7fb2f +0 -0
  1784. data/test/dummy/tmp/cache/assets/E00/1D0/sprockets%2Faaca2cc7dd29a5fb785d9187a0dfe706 +0 -0
  1785. data/test/dummy/tmp/cache/assets/E00/BE0/sprockets%2F05c3fae9e2d94d6d0d45dfac4b3f9a46 +0 -0
  1786. data/test/dummy/tmp/cache/assets/E01/C90/sprockets%2Ffcf9a89d63f392fcd214aa16eb8aac27 +0 -0
  1787. data/test/dummy/tmp/cache/assets/E02/B20/sprockets%2Fc6e33acc669bf1cd37f5ae28f72c17eb +0 -0
  1788. data/test/dummy/tmp/cache/assets/E02/DA0/sprockets%2F9829dec75de6c2a52fdc20d428d2edae +0 -0
  1789. data/test/dummy/tmp/cache/assets/E02/FD0/sprockets%2F3b854b1f189aea494b8d7cbb8bba57bf +0 -0
  1790. data/test/dummy/tmp/cache/assets/E03/900/sprockets%2Fd8cc877bd898dbaa54a1ea40a35fc49d +0 -0
  1791. data/test/dummy/tmp/cache/assets/E03/DB0/sprockets%2F6d1d927a248d67dd1eddcdf22d6b36fd +0 -0
  1792. data/test/dummy/tmp/cache/assets/E04/860/sprockets%2F972757dbdbdfabfeac8ecb8a15520793 +0 -0
  1793. data/test/dummy/tmp/cache/assets/E04/B30/sprockets%2Fd493a86eaf7cd77cec78d1ce82a2c01e +0 -0
  1794. data/test/dummy/tmp/cache/assets/E05/7E0/sprockets%2Ff00268bbf4a2ef79fba886c7fe07aae5 +0 -0
  1795. data/test/dummy/tmp/cache/assets/E05/A70/sprockets%2F7a4daf48a8b7fba4f7bd770048b37fbf +0 -0
  1796. data/test/dummy/tmp/cache/assets/E05/C60/sprockets%2F45fe2fbedb88e452a2572f5d17f4cddc +0 -0
  1797. data/test/dummy/tmp/cache/assets/E05/D20/sprockets%2Fe543fd82a88d76b7de2a1f8d3b3ea1fe +0 -0
  1798. data/test/dummy/tmp/cache/assets/E07/5B0/sprockets%2F75fdbfc0584a9cb9dda6428a66dec4b5 +0 -0
  1799. data/test/dummy/tmp/cache/assets/E07/FD0/sprockets%2F2b98add7bf753973c33fe3b83bdb7abf +0 -0
  1800. data/test/dummy/tmp/cache/assets/E09/3A0/sprockets%2Fce169ea5acdadfe4c839572b724c6ec9 +0 -0
  1801. data/test/dummy/tmp/cache/assets/E09/530/sprockets%2Fe1dc36486b787a7a4ea5f1d7c6cce8af +0 -0
  1802. data/test/dummy/tmp/cache/assets/E09/BB0/sprockets%2F8b4cac87efe1e44abe5ee0e53cc89862 +0 -0
  1803. data/test/dummy/tmp/cache/assets/E09/C70/sprockets%2Faa99ad6cc6a503dacfd5969462dfe1e9 +0 -0
  1804. data/test/dummy/tmp/cache/assets/E09/EE0/sprockets%2F3a991c15e3b2bb3a1a61f1cad0babc5d +0 -0
  1805. data/test/dummy/tmp/cache/assets/E0A/220/sprockets%2Feb18cd8c9ffabeb80289b3377c0f5be7 +0 -0
  1806. data/test/dummy/tmp/cache/assets/E0B/9C0/sprockets%2F056c4cfcff64c6e7d884bfc5df9a6a30 +0 -0
  1807. data/test/dummy/tmp/cache/assets/E0C/810/sprockets%2Fe74897a12cedd8efea5a559354bd5bfc +0 -0
  1808. data/test/dummy/tmp/cache/assets/E0D/E80/sprockets%2F09e10feca84feaecf9e6fc98bb524673 +0 -0
  1809. data/test/dummy/tmp/cache/assets/E0F/B40/sprockets%2Ff5dfabed7f563e53d4735ef9c4b7a0e9 +0 -0
  1810. data/test/dummy/tmp/cache/assets/E11/400/sprockets%2Ff6a9c23ee9f2ed728efa077ea66dfb55 +0 -0
  1811. data/test/dummy/tmp/cache/assets/E11/4E0/sprockets%2F86e145a39f85cceeaffdff91ebb61449 +0 -0
  1812. data/test/dummy/tmp/cache/assets/E11/C70/sprockets%2Fe5ad970d57c66489f9eebacb8e3a5ae5 +0 -0
  1813. data/test/dummy/tmp/cache/assets/E11/DA0/sprockets%2Fe190d6d51f5a7a4d99cb6fcee9aef818 +0 -0
  1814. data/test/dummy/tmp/cache/assets/E13/B10/sprockets%2Fafbb0a11dcbf1c86ee74a1f22f2c173a +0 -0
  1815. data/test/dummy/tmp/cache/assets/E13/BC0/sprockets%2Fd5a0b1a1d1b7e4d61cccda14178afc4e +0 -0
  1816. data/test/dummy/tmp/cache/assets/E14/550/sprockets%2Ff9c8ed5531fed6e3f39ac687e3dfa92a +0 -0
  1817. data/test/dummy/tmp/cache/assets/E14/D30/sprockets%2F0bca399bfd75c35a4fbd11a0c0a80ead +0 -0
  1818. data/test/dummy/tmp/cache/assets/E17/050/sprockets%2F2384cbaada09cccab78e3d31a57d1dc1 +0 -0
  1819. data/test/dummy/tmp/cache/assets/E18/C50/sprockets%2Feda3e89b32d809eedd64f8c9d9f25b9b +0 -0
  1820. data/test/dummy/tmp/cache/assets/E19/260/sprockets%2F2ee68c61809cbf9fc9cee9c3c677fcd2 +0 -0
  1821. data/test/dummy/tmp/cache/assets/E19/C20/sprockets%2F184e9dbf5dec7eeb23895ca96ec1ef79 +0 -0
  1822. data/test/dummy/tmp/cache/assets/E1E/780/sprockets%2Fb5bab679a7f381c4da5a30cc0dac73fc +0 -0
  1823. data/test/dummy/tmp/cache/assets/E1E/DE0/sprockets%2F84b3baefc2c0a8c2c9c0a92eacc3557b +0 -0
  1824. data/test/dummy/tmp/cache/assets/E1F/5E0/sprockets%2Fedacf71afed14b1da329d30fcaf84091 +0 -0
  1825. data/test/dummy/tmp/cache/assets/E20/290/sprockets%2F7b6ebbec5fd3e30a80daa70d28e0a7d5 +0 -0
  1826. data/test/dummy/tmp/cache/assets/E20/4D0/sprockets%2Ffe257ca0acf9ab234c0f034d9bfbc27e +0 -0
  1827. data/test/dummy/tmp/cache/assets/E20/CA0/sprockets%2Faea8014e4b1beb3df35fa1391d8dba9e +0 -0
  1828. data/test/dummy/tmp/cache/assets/E21/330/sprockets%2F816aead61cd3e240f2bbe1e78da1fdb7 +0 -0
  1829. data/test/dummy/tmp/cache/assets/E23/E70/sprockets%2Fce13ae5e7f8e00fc6ea913d6b64bbaa3 +0 -0
  1830. data/test/dummy/tmp/cache/assets/E27/510/sprockets%2F7b32d64d4a96acfff7ce0d8b1a114bee +0 -0
  1831. data/test/dummy/tmp/cache/assets/E27/B40/sprockets%2F706c5fadd13ccdf6602b80ebb56bccf9 +0 -0
  1832. data/test/dummy/tmp/cache/assets/E28/850/sprockets%2F2e159e9fa66f1b4a184c6cecdab2c5ad +0 -0
  1833. data/test/dummy/tmp/cache/assets/E28/900/sprockets%2F796d603dbdc9efaab52c14ca51ebcc68 +0 -0
  1834. data/test/dummy/tmp/cache/assets/E2A/8C0/sprockets%2F89ff6c07d31f18fbac3accf30be90f2c +0 -0
  1835. data/test/dummy/tmp/cache/assets/E2C/EA0/sprockets%2Fcb15d5ff97502cc7dfe8a2e06ab16efb +0 -0
  1836. data/test/dummy/tmp/cache/assets/E2C/EC0/sprockets%2F59dbddba5b9232ec7cd4cf1d4470dfa8 +0 -0
  1837. data/test/dummy/tmp/cache/assets/E2D/630/sprockets%2F95b2fe9ec24a6321c9aebcc3b7c53dfe +0 -0
  1838. data/test/dummy/tmp/cache/assets/E2E/240/sprockets%2F7c5f9d08e0f93caa0049bcee85aedd4a +0 -0
  1839. data/test/dummy/tmp/cache/assets/E2E/350/sprockets%2F3cfe1f5fa9fc1bb53eba0fdc9527d087 +0 -0
  1840. data/test/dummy/tmp/cache/assets/E2F/930/sprockets%2F22b1cbacd98f51adeaab5bd8765e4f97 +0 -0
  1841. data/test/dummy/tmp/cache/assets/E30/4D0/sprockets%2Fe9fae8bbab01dfe66e3c0c74f4694ea3 +0 -0
  1842. data/test/dummy/tmp/cache/assets/E30/C50/sprockets%2Fdaad6c4c7b1429f8de49d81fac6ad18b +0 -0
  1843. data/test/dummy/tmp/cache/assets/E31/BE0/sprockets%2Fbde2e391b5b3b93eee3cef0ec298c27e +0 -0
  1844. data/test/dummy/tmp/cache/assets/E32/770/sprockets%2F2dddbf886809ec0aead3a14cd95d77db +0 -0
  1845. data/test/dummy/tmp/cache/assets/E32/970/sprockets%2F89fd1565e9aef5c1227eabc3aaeca8c8 +0 -0
  1846. data/test/dummy/tmp/cache/assets/E32/FD0/sprockets%2Fce7d29b07b2f0d14ef1add992dfafa89 +0 -0
  1847. data/test/dummy/tmp/cache/assets/E33/140/sprockets%2Fd8fca3eef9bad452dec9b18b4d624e71 +0 -0
  1848. data/test/dummy/tmp/cache/assets/E34/C60/sprockets%2F9f0fe8dcfea52f4316c107fc6c54eece +0 -0
  1849. data/test/dummy/tmp/cache/assets/E36/180/sprockets%2Fedceaafc5a9667eea75b1b930dd8385d +0 -0
  1850. data/test/dummy/tmp/cache/assets/E36/230/sprockets%2F56aec75c7f17ef3509d4cadcf2e6fc3d +0 -0
  1851. data/test/dummy/tmp/cache/assets/E37/6B0/sprockets%2Fce49aa1fbe8185b07e78cf9b9eee22ab +0 -0
  1852. data/test/dummy/tmp/cache/assets/E3B/D00/sprockets%2Fd449bd8f327cb66deda93ffa0f2e39ed +0 -0
  1853. data/test/dummy/tmp/cache/assets/E3B/DD0/sprockets%2F8cb9fef1ee4f6bcbb80758f5c675db1a +0 -0
  1854. data/test/dummy/tmp/cache/assets/E3C/680/sprockets%2Fd057ba99f8cc7b032da8ed9e8c0dff7c +0 -0
  1855. data/test/dummy/tmp/cache/assets/E3E/270/sprockets%2F426e7ee1f8aeb990a55fdf8d6eefbd04 +0 -0
  1856. data/test/dummy/tmp/cache/assets/E43/920/sprockets%2F5cad0e4ea31f4ce054cbccc73aec3d31 +0 -0
  1857. data/test/dummy/tmp/cache/assets/E45/7D0/sprockets%2Fb0cc11f8e54af3bf47bfb15dd0a1cd4a +0 -0
  1858. data/test/dummy/tmp/cache/assets/E47/EE0/sprockets%2F6fba75aa89fee58fffebc349da5e4278 +0 -0
  1859. data/test/dummy/tmp/cache/assets/E48/A40/sprockets%2F5a809fe2fba8e68f5fb8fafcd38ee277 +0 -0
  1860. data/test/dummy/tmp/cache/assets/E49/7D0/sprockets%2Fbca7754fb22abbbefa0eaf6c51bd7414 +0 -0
  1861. data/test/dummy/tmp/cache/assets/E4A/830/sprockets%2Fc5cdc268433cdda05f09b4f0b1acdddc +0 -0
  1862. data/test/dummy/tmp/cache/assets/E4C/BF0/sprockets%2F6d8da16fe61e7d88ff73e7f6cec6ccf5 +0 -0
  1863. data/test/dummy/tmp/cache/assets/E4E/F40/sprockets%2F73440bdc546d14ab9b83aab4acfbedde +0 -0
  1864. data/test/dummy/tmp/cache/assets/E52/F40/sprockets%2Fcaeb0323eed181ea6fd45cf71cadd8e2 +0 -0
  1865. data/test/dummy/tmp/cache/assets/E53/340/sprockets%2Fbad75d3d5f8eba9ceada05fa125a642f +0 -0
  1866. data/test/dummy/tmp/cache/assets/E53/E90/sprockets%2Fef5f981a710fafa0eff01fbc0b4ed91b +0 -0
  1867. data/test/dummy/tmp/cache/assets/E54/0F0/sprockets%2Fddbe86c2b19c9b2c5d0bca8e248a1fcb +0 -0
  1868. data/test/dummy/tmp/cache/assets/E55/340/sprockets%2Faaeaef87c1531a051fcdb8def54f4c1f +0 -0
  1869. data/test/dummy/tmp/cache/assets/E55/410/sprockets%2Fe82a167aefed53aba0ffe873cb2f6b1a +0 -0
  1870. data/test/dummy/tmp/cache/assets/E5D/C20/sprockets%2F6ecad38e80ae9b4b5c56f05de5abfd5a +0 -0
  1871. data/test/dummy/tmp/cache/assets/E5E/CA0/sprockets%2Fdf31d095f37e9abda2e4ddb3e0e6fcb9 +0 -0
  1872. data/test/dummy/tmp/cache/assets/E65/760/sprockets%2F57acbaa97ded591947d4d8d0aeedae7a +0 -0
  1873. data/test/dummy/tmp/cache/assets/E6F/E60/sprockets%2Ff9ecdee73e5cbf1fa4fd9c528c657fb1 +0 -0
  1874. data/test/dummy/tmp/cache/assets/E78/760/sprockets%2Fdf3b599b4eba745e968ccaf8f8ca7fce +0 -0
  1875. data/test/dummy/tmp/cache/assets/E83/3A0/sprockets%2Ffdb5f7dc3aba4ce1edb8fd4bd1b42923 +0 -0
  1876. data/test/dummy/tmp/cache/assets/E86/B50/sprockets%2Fdfcadeb204bffbee3c90ab6d43e0f838 +0 -0
  1877. data/test/dummy/tmp/cache/assets/E87/890/sprockets%2Fe44c7a1cdfb3ced088e6ba57cfd06aae +0 -0
  1878. data/test/dummy/tmp/cache/assets/E89/BE0/sprockets%2F9bfc41fee1adbc5e0ab3e58eafb550f9 +0 -0
  1879. data/test/dummy/tmp/cache/assets/E8D/460/sprockets%2Fec62e7d4edfe3b7fb190bcb21fe9bec3 +0 -0
  1880. data/test/dummy/tmp/cache/assets/E91/0F0/sprockets%2Fbdefbcade037f88fe879acfe0a51a7c1 +0 -0
  1881. data/test/dummy/tmp/cache/assets/E91/670/sprockets%2F9eeb12f5fdf4aead299ab3568bfa5afa +0 -0
  1882. data/test/dummy/tmp/cache/assets/E91/870/sprockets%2Fbe8fc4fafc9aaa3e2fac873d7a18a6e6 +0 -0
  1883. data/test/dummy/tmp/cache/assets/E93/2E0/sprockets%2Fba1eb3cc84f5e1fd789bf5f61a8ecdbc +0 -0
  1884. data/test/dummy/tmp/cache/assets/EA4/CD0/sprockets%2F7d06cdaa883a75feeeedbd6f2e89dff6 +0 -0
  1885. data/test/dummy/tmp/cache/assets/EB1/730/sprockets%2Fbb7a9aa4c8afd1e1c0de56bd0d8fbdd4 +0 -0
  1886. data/test/dummy/tmp/cache/assets/ECD/BA0/sprockets%2Ff7a898dcfdfabd5c346afffdfe70fb06 +0 -0
  1887. data/test/dummy/tmp/pids/server.pid +1 -0
  1888. metadata +357 -174
  1889. data/app/assets/javascripts/Shaders/Builtin/Constants.glsl +0 -329
  1890. data/app/assets/javascripts/Shaders/Builtin/Constants.js +0 -31
  1891. data/app/assets/javascripts/Shaders/Builtin/Structs.glsl +0 -99
  1892. data/app/assets/javascripts/Shaders/Builtin/Structs.js +0 -43
  1893. data/test/dummy/tmp/cache/assets/C23/060/sprockets%2F0844038b70e644bef4539389305680a3 +0 -0
  1894. data/test/dummy/tmp/cache/assets/C38/870/sprockets%2F3c244a5393086f3b95954f4675f29458 +0 -0
  1895. data/test/dummy/tmp/cache/assets/C49/6B0/sprockets%2Ff15d3a84028c48073d820c51575157a4 +0 -0
  1896. data/test/dummy/tmp/cache/assets/C51/170/sprockets%2F7121148c53e447e867b886592e11ad00 +0 -0
  1897. data/test/dummy/tmp/cache/assets/C70/900/sprockets%2F8dc34820f1167ed79c121111a0696c03 +0 -0
  1898. data/test/dummy/tmp/cache/assets/C74/B70/sprockets%2F015299bf906470bc43109b56111ae75d +0 -0
  1899. data/test/dummy/tmp/cache/assets/C75/F50/sprockets%2F52991c5c131fb0049279124ef17047ba +0 -0
  1900. data/test/dummy/tmp/cache/assets/C77/EC0/sprockets%2F2610f1526309b9c234d7228c2ad5c288 +0 -0
  1901. data/test/dummy/tmp/cache/assets/C7F/860/sprockets%2F7646acf5464f211440d12d09847e7c43 +0 -0
  1902. data/test/dummy/tmp/cache/assets/C88/960/sprockets%2F50655bc2c86c7c3007756af818375e64 +0 -0
  1903. data/test/dummy/tmp/cache/assets/C8A/680/sprockets%2F401d94c3b6643cb7764590d5765197ea +0 -0
  1904. data/test/dummy/tmp/cache/assets/C8E/D50/sprockets%2F687d2438d13763a733287fc4a2e5f746 +0 -0
  1905. data/test/dummy/tmp/cache/assets/C92/5E0/sprockets%2F6638d8088cb498bf531942a54706ad85 +0 -0
  1906. data/test/dummy/tmp/cache/assets/CAC/220/sprockets%2Fe9d921c5251a11d0a6296974975dbb20 +0 -0
  1907. data/test/dummy/tmp/cache/assets/CAD/7A0/sprockets%2F75cb431051fa14102dc49569f4f970b9 +0 -0
  1908. data/test/dummy/tmp/cache/assets/CB5/4C0/sprockets%2F446522846ac4ed6619268b3e00fd497a +0 -0
  1909. data/test/dummy/tmp/cache/assets/CBB/E80/sprockets%2F43b17645e39f018bc195bc9828f4b357 +0 -0
  1910. data/test/dummy/tmp/cache/assets/CC3/FC0/sprockets%2F81a77b882bfb032312303fa0ce7a5301 +0 -0
  1911. data/test/dummy/tmp/cache/assets/CC7/370/sprockets%2F9603f587d0629697951e09f1d4fdaf25 +0 -0
  1912. data/test/dummy/tmp/cache/assets/CD4/D20/sprockets%2F02e2c15292e6082a4626f13a4aa839ff +0 -0
  1913. data/test/dummy/tmp/cache/assets/CDB/4D0/sprockets%2Ffb9182b4d13b796b245db8153324f4d2 +0 -0
  1914. data/test/dummy/tmp/cache/assets/CEB/520/sprockets%2Fe99130a4204fac5e0b886885339af7c8 +0 -0
  1915. data/test/dummy/tmp/cache/assets/CF8/1A0/sprockets%2Fd1f0dd68a400062aa3834ef5c4234c34 +0 -0
  1916. data/test/dummy/tmp/cache/assets/CFD/160/sprockets%2Fc63d29c7bc89b27fc00430230ba1d383 +0 -0
  1917. data/test/dummy/tmp/cache/assets/D03/EF0/sprockets%2F4799db40f9cc57f50689f6da487464f5 +0 -0
  1918. data/test/dummy/tmp/cache/assets/D04/530/sprockets%2Fc14ce481964a025c2501a5c907c65fce +0 -0
  1919. data/test/dummy/tmp/cache/assets/D0E/0C0/sprockets%2F6b0a72865c5aac78b431a2438e2e984d +0 -0
  1920. data/test/dummy/tmp/cache/assets/D0F/7E0/sprockets%2F45f0d1bae6783a949cd01767d4c7e212 +0 -0
  1921. data/test/dummy/tmp/cache/assets/D11/AB0/sprockets%2F0c18384a2fe843b70adca574f8f12893 +0 -0
  1922. data/test/dummy/tmp/cache/assets/D12/CA0/sprockets%2Fc7d7f04f0325fc994a73d6a41cc60863 +0 -0
  1923. data/test/dummy/tmp/cache/assets/D15/A20/sprockets%2F46b5881e463b09c7f61736e5ec2aeb16 +0 -0
  1924. data/test/dummy/tmp/cache/assets/D16/2A0/sprockets%2F3739709cf73c9a32b521b45677cd4bde +0 -0
  1925. data/test/dummy/tmp/cache/assets/D19/E90/sprockets%2F16cd7e58935dd8d1d376f10be6b50368 +0 -0
  1926. data/test/dummy/tmp/cache/assets/D1A/0C0/sprockets%2Fa606399c0ce2e298b58fec46777024ad +0 -0
  1927. data/test/dummy/tmp/cache/assets/D26/470/sprockets%2F1e9b32c11057bc537b0021de4f1f1fc6 +0 -0
  1928. data/test/dummy/tmp/cache/assets/D2A/6F0/sprockets%2Fd6e43c7223231cda4b71e82ba285bd40 +0 -0
  1929. data/test/dummy/tmp/cache/assets/D2B/210/sprockets%2F67aaa6c903e6b15c74de39af0002a451 +0 -0
  1930. data/test/dummy/tmp/cache/assets/D2B/CF0/sprockets%2F70b2adc5e73b271342371aaad257b76d +0 -0
  1931. data/test/dummy/tmp/cache/assets/D32/6E0/sprockets%2Fb4f78f31b9aab6dbd2911b07076d4601 +0 -0
  1932. data/test/dummy/tmp/cache/assets/D37/070/sprockets%2F59e3be9a13634f3b3d0cab4ad0889063 +0 -0
  1933. data/test/dummy/tmp/cache/assets/D3A/690/sprockets%2Fb5058a82d02b84df6210af598cfa644c +0 -0
  1934. data/test/dummy/tmp/cache/assets/D3C/BB0/sprockets%2Ff498d519cb8ac1895bb3aa90117d424a +0 -0
  1935. data/test/dummy/tmp/cache/assets/D3C/E40/sprockets%2Fba57600a2dd2f6da96613de37f27930f +0 -0
  1936. data/test/dummy/tmp/cache/assets/D3D/4E0/sprockets%2F7d37b8c27a3f3b1a02c4fe17643de865 +0 -0
  1937. data/test/dummy/tmp/cache/assets/D3F/590/sprockets%2F13a259ba93c919fa5a47ba9cf10569f1 +0 -0
  1938. data/test/dummy/tmp/cache/assets/D41/220/sprockets%2Fafb511e47c76bf448b6f7072c8d3118c +0 -0
  1939. data/test/dummy/tmp/cache/assets/D42/970/sprockets%2Fe27c8084b9cf2eaa063f585e92064c5a +0 -0
  1940. data/test/dummy/tmp/cache/assets/D43/F70/sprockets%2F2c844357dd8de7db147f80c3539b0ee0 +0 -0
  1941. data/test/dummy/tmp/cache/assets/D46/600/sprockets%2F1c942ecb30874a3f9e9fea418725ab75 +0 -0
  1942. data/test/dummy/tmp/cache/assets/D46/8E0/sprockets%2F1a4f07bd2741629bdd572848dccf773e +0 -0
  1943. data/test/dummy/tmp/cache/assets/D4C/490/sprockets%2F7e207e1654e5343a964fd6cf3fefb447 +0 -0
  1944. data/test/dummy/tmp/cache/assets/D4F/410/sprockets%2F1377bb2e86073ae3a688e5a6c499a9df +0 -0
  1945. data/test/dummy/tmp/cache/assets/D53/440/sprockets%2F2def445147b9f5d6363f6f6d497d2f0e +0 -0
  1946. data/test/dummy/tmp/cache/assets/D53/530/sprockets%2F59ee24852d9e4f5fbc71c76d036ec773 +0 -0
  1947. data/test/dummy/tmp/cache/assets/D5A/070/sprockets%2Fe7159b621a21a7a0ebd81a32912e8faa +0 -0
  1948. data/test/dummy/tmp/cache/assets/D5C/E00/sprockets%2F92930d4e993eb8bd3498b699dccf9a33 +0 -0
  1949. data/test/dummy/tmp/cache/assets/D5E/3D0/sprockets%2F5f786d832b4e0ba05f6abc3ea314901a +0 -0
  1950. data/test/dummy/tmp/cache/assets/D63/DE0/sprockets%2F73c9e04acfc930681ab170b3e4bfc453 +0 -0
  1951. data/test/dummy/tmp/cache/assets/D67/C10/sprockets%2Ffb4b4451c110f07957c2ecacf854c5d4 +0 -0
  1952. data/test/dummy/tmp/cache/assets/D68/000/sprockets%2F39c01fa5c01830f3558eb1c97c4dfb6b +0 -0
  1953. data/test/dummy/tmp/cache/assets/D6D/690/sprockets%2Fd288d7215df092fdc70b3b8216dce2f3 +0 -0
  1954. data/test/dummy/tmp/cache/assets/D7C/B90/sprockets%2Fc89b5af12387ee80ca80e3f2ac776c79 +0 -0
  1955. data/test/dummy/tmp/cache/assets/D8C/490/sprockets%2Fb40a350e70f7ac1103ab86edd777ac3e +0 -0
  1956. data/test/dummy/tmp/cache/assets/D94/4E0/sprockets%2F6afd6060a158a6f0f21a61e9d2fc4a7e +0 -0
  1957. data/test/dummy/tmp/cache/assets/D98/280/sprockets%2F1b8bca892cab85afe98307a2b0b394e2 +0 -0
  1958. data/test/dummy/tmp/cache/assets/D99/B10/sprockets%2F4aa8fece5b18d820a44dc266a89d50e0 +0 -0
  1959. data/test/dummy/tmp/cache/assets/D9F/800/sprockets%2F5c722d8150c68e6eacad70fb64e5e1f5 +0 -0
  1960. data/test/dummy/tmp/cache/assets/DA5/4D0/sprockets%2Fb4a2d96a1bf347b4dbce5779a8c4f636 +0 -0
  1961. data/test/dummy/tmp/cache/assets/DA6/FC0/sprockets%2F900ed66847c0ec1eff94ad75fc26f11e +0 -0
  1962. data/test/dummy/tmp/cache/assets/DA7/F70/sprockets%2F33b3ac7d96fc921e7e2e8f437c8bb54a +0 -0
  1963. data/test/dummy/tmp/cache/assets/DAD/810/sprockets%2Fcfb7db145b0d0a3010f5d0cd7a08fb15 +0 -0
  1964. data/test/dummy/tmp/cache/assets/DAE/A40/sprockets%2F7fefa2cd6e72f17c926159c9b7c3a95a +0 -0
  1965. data/test/dummy/tmp/cache/assets/DB6/480/sprockets%2F7bf790f2e674bbff9288ee9de441f20e +0 -0
  1966. data/test/dummy/tmp/cache/assets/DBE/210/sprockets%2Fa12ca5480c3e2b9cf44ab4ef32e813ec +0 -0
  1967. data/test/dummy/tmp/cache/assets/DC0/760/sprockets%2Fb7e4cf2efcf48d0dcc420131fd30d454 +0 -0
  1968. data/test/dummy/tmp/cache/assets/DCC/300/sprockets%2F4e5d2af447ea6e7082a0a6c353fcfee5 +0 -0
  1969. data/test/dummy/tmp/cache/assets/DCF/4A0/sprockets%2F3efd01a56bae3ae99fd13085f75b9e0d +0 -0
  1970. data/test/dummy/tmp/cache/assets/DD2/380/sprockets%2F7972dab64d4a2a8007c3ecfd887ace4e +0 -0
  1971. data/test/dummy/tmp/cache/assets/E02/B00/sprockets%2F723ccdfbeacf6c4176de34f371c91af9 +0 -0
  1972. data/test/dummy/tmp/cache/assets/E13/F50/sprockets%2Fb9d939b7dbbbfd9f79b5cb4ad7c82815 +0 -0
  1973. data/test/dummy/tmp/cache/assets/E14/0B0/sprockets%2F8bffda6f68fc139ee329bc86f6b7d2f1 +0 -0
  1974. data/test/dummy/tmp/cache/assets/E27/540/sprockets%2F3507970b2c1ccbf7b6bc37d61efadfeb +0 -0
  1975. data/test/dummy/tmp/cache/assets/E2A/030/sprockets%2Fc8ab33fc707f5fb9b8befd27b142b3cb +0 -0
  1976. data/test/dummy/tmp/cache/assets/E2F/3D0/sprockets%2Ff740ae8eecbaedadc3c664c62b83e925 +0 -0
@@ -198,6 +198,7 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
198
198
  this._textureFilterAnisotropic = textureFilterAnisotropic;
199
199
  this._maximumTextureFilterAnisotropy = textureFilterAnisotropic ? gl.getParameter(textureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT) : 1.0;
200
200
  this._vertexArrayObject = gl.getExtension('OES_vertex_array_object');
201
+ this._fragDepth = gl.getExtension('EXT_frag_depth');
201
202
 
202
203
  var cc = gl.getParameter(gl.COLOR_CLEAR_VALUE);
203
204
  this._clearColor = new Color(cc[0], cc[1], cc[2], cc[3]);
@@ -217,6 +218,7 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
217
218
  this._currentFramebuffer = undefined;
218
219
  this._currentSp = undefined;
219
220
  this._currentRenderState = rs;
221
+ this._maxFrameTextureUnitIndex = 0;
220
222
 
221
223
  this._pickObjects = {};
222
224
  this._nextPickColor = new Uint32Array(1);
@@ -752,6 +754,22 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
752
754
  return !!this._vertexArrayObject;
753
755
  };
754
756
 
757
+ /**
758
+ * Returns <code>true</code> if the EXT_frag_depth extension is supported. This
759
+ * extension provides access to the <code>gl_FragDepthEXT<code> built-in output variable
760
+ * from GLSL fragment shaders. A shader using these functions still needs to explicitly enable the
761
+ * extension with <code>#extension GL_EXT_frag_depth : enable</code>.
762
+ *
763
+ * @memberof Context
764
+ *
765
+ * @returns {Boolean} <code>true</code> if EXT_frag_depth is supported; otherwise, <code>false</code>.
766
+ *
767
+ * @see <a href='http://www.khronos.org/registry/webgl/extensions/EXT_frag_depth/'>EXT_frag_depth</a>
768
+ */
769
+ Context.prototype.getFragmentDepth = function() {
770
+ return !!this._fragDepth;
771
+ };
772
+
755
773
  /**
756
774
  * DOC_TBA
757
775
  *
@@ -905,6 +923,32 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
905
923
  return this._defaultCubeMap;
906
924
  };
907
925
 
926
+ /**
927
+ * Returns the drawingBufferWidth of the underlying GL context.
928
+ *
929
+ * @memberof Context
930
+ *
931
+ * @returns {Number} The value in the drawingBufferWidth property of the underlying GL context.
932
+ *
933
+ * @see <a href='https://www.khronos.org/registry/webgl/specs/1.0/#DOM-WebGLRenderingContext-drawingBufferWidth'>drawingBufferWidth</a>
934
+ */
935
+ Context.prototype.getDrawingBufferHeight = function() {
936
+ return this._gl.drawingBufferHeight;
937
+ };
938
+
939
+ /**
940
+ * Returns the drawingBufferHeight of the underlying GL context.
941
+ *
942
+ * @memberof Context
943
+ *
944
+ * @returns {Number} The value in the drawingBufferHeight property of the underlying GL context.
945
+ *
946
+ * @see <a href='https://www.khronos.org/registry/webgl/specs/1.0/#DOM-WebGLRenderingContext-drawingBufferHeight'>drawingBufferHeight</a>
947
+ */
948
+ Context.prototype.getDrawingBufferWidth = function() {
949
+ return this._gl.drawingBufferWidth;
950
+ };
951
+
908
952
  /**
909
953
  * Creates a shader program given the GLSL source for a vertex and fragment shader.
910
954
  * <br /><br />
@@ -1346,11 +1390,13 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
1346
1390
  * var t = context.createTexture2DFromFramebuffer();
1347
1391
  */
1348
1392
  Context.prototype.createTexture2DFromFramebuffer = function(pixelFormat, framebufferXOffset, framebufferYOffset, width, height) {
1393
+ var gl = this._gl;
1394
+
1349
1395
  pixelFormat = defaultValue(pixelFormat, PixelFormat.RGB);
1350
1396
  framebufferXOffset = defaultValue(framebufferXOffset, 0);
1351
1397
  framebufferYOffset = defaultValue(framebufferYOffset, 0);
1352
- width = defaultValue(width, this._canvas.clientWidth);
1353
- height = defaultValue(height, this._canvas.clientHeight);
1398
+ width = defaultValue(width, gl.drawingBufferWidth);
1399
+ height = defaultValue(height, gl.drawingBufferHeight);
1354
1400
 
1355
1401
  if (!PixelFormat.validate(pixelFormat)) {
1356
1402
  throw new DeveloperError('Invalid pixelFormat.');
@@ -1368,15 +1414,14 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
1368
1414
  throw new DeveloperError('framebufferYOffset must be greater than or equal to zero.');
1369
1415
  }
1370
1416
 
1371
- if (framebufferXOffset + width > this._canvas.clientWidth) {
1372
- throw new DeveloperError('framebufferXOffset + width must be less than or equal to getCanvas().clientWidth');
1417
+ if (framebufferXOffset + width > gl.drawingBufferWidth) {
1418
+ throw new DeveloperError('framebufferXOffset + width must be less than or equal to drawingBufferWidth');
1373
1419
  }
1374
1420
 
1375
- if (framebufferYOffset + height > this._canvas.clientHeight) {
1376
- throw new DeveloperError('framebufferYOffset + height must be less than or equal to getCanvas().clientHeight.');
1421
+ if (framebufferYOffset + height > gl.drawingBufferHeight) {
1422
+ throw new DeveloperError('framebufferYOffset + height must be less than or equal to drawingBufferHeight.');
1377
1423
  }
1378
1424
 
1379
- var gl = this._gl;
1380
1425
  var textureTarget = gl.TEXTURE_2D;
1381
1426
  var texture = gl.createTexture();
1382
1427
 
@@ -1618,12 +1663,13 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
1618
1663
  * @see Context#createFramebuffer
1619
1664
  */
1620
1665
  Context.prototype.createRenderbuffer = function(description) {
1666
+ var gl = this._gl;
1667
+
1621
1668
  description = defaultValue(description, defaultValue.EMPTY_OBJECT);
1622
1669
  var format = defaultValue(description.format, RenderbufferFormat.RGBA4);
1623
- var width = defined(description.width) ? description.width : this._canvas.clientWidth;
1624
- var height = defined(description.height) ? description.height : this._canvas.clientHeight;
1670
+ var width = defined(description.width) ? description.width : gl.drawingBufferWidth;
1671
+ var height = defined(description.height) ? description.height : gl.drawingBufferHeight;
1625
1672
 
1626
- var gl = this._gl;
1627
1673
  if (!RenderbufferFormat.validate(format)) {
1628
1674
  throw new DeveloperError('Invalid format.');
1629
1675
  }
@@ -1812,8 +1858,8 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
1812
1858
  */
1813
1859
  Context.prototype.createSampler = function(sampler) {
1814
1860
  var s = {
1815
- wrapS : sampler.wrapS || TextureWrap.CLAMP,
1816
- wrapT : sampler.wrapT || TextureWrap.CLAMP,
1861
+ wrapS : sampler.wrapS || TextureWrap.CLAMP_TO_EDGE,
1862
+ wrapT : sampler.wrapT || TextureWrap.CLAMP_TO_EDGE,
1817
1863
  minificationFilter : sampler.minificationFilter || TextureMinificationFilter.LINEAR,
1818
1864
  magnificationFilter : sampler.magnificationFilter || TextureMagnificationFilter.LINEAR,
1819
1865
  maximumAnisotropy : (defined(sampler.maximumAnisotropy)) ? sampler.maximumAnisotropy : 1.0
@@ -2034,6 +2080,7 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
2034
2080
 
2035
2081
  this._currentFramebuffer = framebuffer;
2036
2082
  this._currentSp = sp;
2083
+ this._maxFrameTextureUnitIndex = Math.max(this._maxFrameTextureUnitIndex, sp.maximumTextureUnitIndex);
2037
2084
  };
2038
2085
 
2039
2086
  /**
@@ -2105,10 +2152,26 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
2105
2152
  this._currentFramebuffer._unBind();
2106
2153
  this._currentFramebuffer = undefined;
2107
2154
  }
2108
- this._currentSp._unBind();
2109
2155
  this._currentSp = undefined;
2110
2156
  };
2111
2157
 
2158
+ /**
2159
+ * @private
2160
+ */
2161
+ Context.prototype.endFrame = function() {
2162
+ var gl = this._gl;
2163
+ gl.useProgram(null);
2164
+
2165
+ var length = this._maxFrameTextureUnitIndex;
2166
+ this._maxFrameTextureUnitIndex = 0;
2167
+
2168
+ for (var i = 0; i < length; ++i) {
2169
+ gl.activeTexture(gl.TEXTURE0 + i);
2170
+ gl.bindTexture(gl.TEXTURE_2D, null);
2171
+ gl.bindTexture(gl.TEXTURE_CUBE_MAP, null);
2172
+ }
2173
+ };
2174
+
2112
2175
  /**
2113
2176
  * DOC_TBA
2114
2177
  *
@@ -2118,11 +2181,13 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
2118
2181
  * @exception {DeveloperError} readState.height must be greater than zero.
2119
2182
  */
2120
2183
  Context.prototype.readPixels = function(readState) {
2184
+ var gl = this._gl;
2185
+
2121
2186
  readState = readState || {};
2122
2187
  var x = Math.max(readState.x || 0, 0);
2123
2188
  var y = Math.max(readState.y || 0, 0);
2124
- var width = readState.width || this._canvas.clientWidth;
2125
- var height = readState.height || this._canvas.clientHeight;
2189
+ var width = readState.width || gl.drawingBufferWidth;
2190
+ var height = readState.height || gl.drawingBufferHeight;
2126
2191
  var framebuffer = readState.framebuffer || null;
2127
2192
 
2128
2193
  if (width <= 0) {
@@ -2140,7 +2205,6 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
2140
2205
  this._validateFramebuffer(framebuffer);
2141
2206
  }
2142
2207
 
2143
- var gl = this._gl;
2144
2208
  gl.readPixels(x, y, width, height, gl.RGBA, gl.UNSIGNED_BYTE, pixels);
2145
2209
 
2146
2210
  if (framebuffer) {
@@ -2489,7 +2553,9 @@ define(['Core/defaultValue', 'Core/defined', 'Core/DeveloperError', 'Core/destro
2489
2553
  * @see Context#getObjectByPickColor
2490
2554
  *
2491
2555
  * @example
2492
- * this._pickId = context.createPickId(this);
2556
+ * this._pickId = context.createPickId({
2557
+ * primitive : this
2558
+ * });
2493
2559
  */
2494
2560
  Context.prototype.createPickId = function(object) {
2495
2561
  if (!defined(object)) {
@@ -180,8 +180,8 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/destroyObject', 'Core/Math'
180
180
  }
181
181
 
182
182
  sampler = {
183
- wrapS : TextureWrap.CLAMP,
184
- wrapT : TextureWrap.CLAMP,
183
+ wrapS : TextureWrap.CLAMP_TO_EDGE,
184
+ wrapT : TextureWrap.CLAMP_TO_EDGE,
185
185
  minificationFilter : minFilter,
186
186
  magnificationFilter : magFilter,
187
187
  maximumAnisotropy : 1.0
@@ -30,8 +30,8 @@ define(['Core/defaultValue', 'Core/defined', 'Core/destroyObject', 'Core/Color',
30
30
 
31
31
  PickFramebuffer.prototype.begin = function(screenSpaceRectangle) {
32
32
  var context = this._context;
33
- var width = context.getCanvas().clientWidth;
34
- var height = context.getCanvas().clientHeight;
33
+ var width = context.getDrawingBufferWidth();
34
+ var height = context.getDrawingBufferHeight();
35
35
 
36
36
  BoundingRectangle.clone(screenSpaceRectangle, this._passState.scissorTest.rectangle);
37
37
 
@@ -110,8 +110,8 @@ define(['Core/Color', 'Core/defaultValue', 'Core/defined', 'Core/DeveloperError'
110
110
  };
111
111
  this.dither = defaultValue(rs.dither, true);
112
112
  this.viewport = (defined(viewport)) ? new BoundingRectangle(viewport.x, viewport.y,
113
- (!defined(viewport.width)) ? context.getCanvas().clientWidth : viewport.width,
114
- (!defined(viewport.height)) ? context.getCanvas().clientHeight : viewport.height) : undefined;
113
+ (!defined(viewport.width)) ? context.getDrawingBufferWidth() : viewport.width,
114
+ (!defined(viewport.height)) ? context.getDrawingBufferHeight() : viewport.height) : undefined;
115
115
 
116
116
  // Validate
117
117
 
@@ -393,10 +393,9 @@ define(['Core/Color', 'Core/defaultValue', 'Core/defined', 'Core/DeveloperError'
393
393
  var viewport = renderState.viewport;
394
394
 
395
395
  if (!defined(viewport)) {
396
- var canvas = passState.context.getCanvas();
397
396
  viewport = scratchViewport;
398
- viewport.width = canvas.clientWidth;
399
- viewport.height = canvas.clientHeight;
397
+ viewport.width = passState.context.getDrawingBufferWidth();
398
+ viewport.height = passState.context.getDrawingBufferHeight();
400
399
  }
401
400
 
402
401
  passState.context.getUniformState().setViewport(viewport);
@@ -1,5 +1,5 @@
1
1
  /*global define*/
2
- define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/RuntimeError', 'Core/destroyObject', 'Core/Matrix2', 'Core/Matrix3', 'Core/Matrix4', 'Renderer/UniformDatatype', 'Shaders/Builtin/Structs', 'Shaders/Builtin/Constants', 'Shaders/Builtin/Functions/RGBToXYZ', 'Shaders/Builtin/Functions/XYZToRGB', 'Shaders/Builtin/Functions/antialias', 'Shaders/Builtin/Functions/cellular', 'Shaders/Builtin/Functions/columbusViewMorph', 'Shaders/Builtin/Functions/computePosition', 'Shaders/Builtin/Functions/eastNorthUpToEyeCoordinates', 'Shaders/Builtin/Functions/ellipsoidContainsPoint', 'Shaders/Builtin/Functions/ellipsoidNew', 'Shaders/Builtin/Functions/ellipsoidWgs84TextureCoordinates', 'Shaders/Builtin/Functions/equalsEpsilon', 'Shaders/Builtin/Functions/eyeOffset', 'Shaders/Builtin/Functions/eyeToWindowCoordinates', 'Shaders/Builtin/Functions/geodeticSurfaceNormal', 'Shaders/Builtin/Functions/getDefaultMaterial', 'Shaders/Builtin/Functions/getWaterNoise', 'Shaders/Builtin/Functions/getWgs84EllipsoidEC', 'Shaders/Builtin/Functions/hue', 'Shaders/Builtin/Functions/isEmpty', 'Shaders/Builtin/Functions/isFull', 'Shaders/Builtin/Functions/latitudeToWebMercatorFraction', 'Shaders/Builtin/Functions/luminance', 'Shaders/Builtin/Functions/modelToWindowCoordinates', 'Shaders/Builtin/Functions/multiplyWithColorBalance', 'Shaders/Builtin/Functions/phong', 'Shaders/Builtin/Functions/pointAlongRay', 'Shaders/Builtin/Functions/rayEllipsoidIntersectionInterval', 'Shaders/Builtin/Functions/saturation', 'Shaders/Builtin/Functions/snoise', 'Shaders/Builtin/Functions/tangentToEyeSpaceMatrix', 'Shaders/Builtin/Functions/translateRelativeToEye', 'Shaders/Builtin/Functions/transpose', 'Shaders/Builtin/Functions/windowToEyeCoordinates'], function(
2
+ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/RuntimeError', 'Core/destroyObject', 'Core/Matrix2', 'Core/Matrix3', 'Core/Matrix4', 'Renderer/AutomaticUniforms', 'Renderer/UniformDatatype', 'Shaders/Builtin/CzmBuiltins'], function(
3
3
  defined,
4
4
  DeveloperError,
5
5
  FeatureDetection,
@@ -8,1742 +8,12 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
8
8
  Matrix2,
9
9
  Matrix3,
10
10
  Matrix4,
11
+ AutomaticUniforms,
11
12
  UniformDatatype,
12
- ShadersBuiltinStructs,
13
- ShadersBuiltinConstants,
14
- czm_RGBToXYZ,
15
- czm_XYZToRGB,
16
- czm_antialias,
17
- czm_cellular,
18
- czm_columbusViewMorph,
19
- czm_computePosition,
20
- czm_eastNorthUpToEyeCoordinates,
21
- czm_ellipsoidContainsPoint,
22
- czm_ellipsoidNew,
23
- czm_ellipsoidWgs84TextureCoordinates,
24
- czm_equalsEpsilon,
25
- czm_eyeOffset,
26
- czm_eyeToWindowCoordinates,
27
- czm_geodeticSurfaceNormal,
28
- czm_getDefaultMaterial,
29
- czm_getWaterNoise,
30
- czm_getWgs84EllipsoidEC,
31
- czm_hue,
32
- czm_isEmpty,
33
- czm_isFull,
34
- czm_latitudeToWebMercatorFraction,
35
- czm_luminance,
36
- czm_modelToWindowCoordinates,
37
- czm_multiplyWithColorBalance,
38
- czm_phong,
39
- czm_pointAlongRay,
40
- czm_rayEllipsoidIntersectionInterval,
41
- czm_saturation,
42
- czm_snoise,
43
- czm_tangentToEyeSpaceMatrix,
44
- czm_translateRelativeToEye,
45
- czm_transpose,
46
- czm_windowToEyeCoordinates) {
13
+ CzmBuiltins) {
47
14
  "use strict";
48
15
  /*global console*/
49
16
 
50
- var allAutomaticUniforms = {
51
- /**
52
- * An automatic GLSL uniform containing the viewport's <code>x</code>, <code>y</code>, <code>width</code>,
53
- * and <code>height</code> properties in an <code>vec4</code>'s <code>x</code>, <code>y</code>, <code>z</code>,
54
- * and <code>w</code> components, respectively.
55
- * <br /><br />
56
- * Like all automatic uniforms, <code>czm_viewport</code> does not need to be explicitly declared.
57
- * However, it can be explicitly declared when a shader is also used by other applications such
58
- * as a third-party authoring tool.
59
- *
60
- * @alias czm_viewport
61
- * @glslUniform
62
- *
63
- * @see Context#getViewport
64
- *
65
- * @example
66
- * // GLSL declaration
67
- * uniform vec4 czm_viewport;
68
- *
69
- * // Scale the window coordinate components to [0, 1] by dividing
70
- * // by the viewport's width and height.
71
- * vec2 v = gl_FragCoord.xy / czm_viewport.zw;
72
- */
73
- czm_viewport : {
74
- getSize : function() {
75
- return 1;
76
- },
77
-
78
- getDatatype : function() {
79
- return UniformDatatype.FLOAT_VECTOR4;
80
- },
81
-
82
- getValue : function(uniformState) {
83
- var v = uniformState.getViewport();
84
- return {
85
- x : v.x,
86
- y : v.y,
87
- z : v.width,
88
- w : v.height
89
- };
90
- }
91
- },
92
-
93
- /**
94
- * An automatic GLSL uniform representing a 4x4 orthographic projection matrix that
95
- * transforms window coordinates to clip coordinates. Clip coordinates is the
96
- * coordinate system for a vertex shader's <code>gl_Position</code> output.
97
- * <br /><br />
98
- * This transform is useful when a vertex shader inputs or manipulates window coordinates
99
- * as done by {@link BillboardCollection}.
100
- * <br /><br />
101
- * Do not confuse {@link czm_viewportTransformation} with <code>czm_viewportOrthographic</code>.
102
- * The former transforms from normalized device coordinates to window coordinates; the later transforms
103
- * from window coordinates to clip coordinates, and is often used to assign to <code>gl_Position</code>.
104
- * <br /><br />
105
- * Like all automatic uniforms, <code>czm_viewportOrthographic</code> does not need to be explicitly declared.
106
- * However, it can be explicitly declared when a shader is also used by other applications such
107
- * as a third-party authoring tool.
108
- *
109
- * @alias czm_viewportOrthographic
110
- * @glslUniform
111
- *
112
- * @see UniformState#getViewportOrthographic
113
- * @see czm_viewport
114
- * @see czm_viewportTransformation
115
- * @see BillboardCollection
116
- *
117
- * @example
118
- * // GLSL declaration
119
- * uniform mat4 czm_viewportOrthographic;
120
- *
121
- * // Example
122
- * gl_Position = czm_viewportOrthographic * vec4(windowPosition, 0.0, 1.0);
123
- */
124
- czm_viewportOrthographic : {
125
- getSize : function() {
126
- return 1;
127
- },
128
-
129
- getDatatype : function() {
130
- return UniformDatatype.FLOAT_MATRIX4;
131
- },
132
-
133
- getValue : function(uniformState) {
134
- return uniformState.getViewportOrthographic();
135
- }
136
- },
137
-
138
- /**
139
- * An automatic GLSL uniform representing a 4x4 transformation matrix that
140
- * transforms normalized device coordinates to window coordinates. The context's
141
- * full viewport is used, and the depth range is assumed to be <code>near = 0</code>
142
- * and <code>far = 1</code>.
143
- * <br /><br />
144
- * This transform is useful when there is a need to manipulate window coordinates
145
- * in a vertex shader as done by {@link BillboardCollection}. In many cases,
146
- * this matrix will not be used directly; instead, {@link czm_modelToWindowCoordinates}
147
- * will be used to transform directly from model to window coordinates.
148
- * <br /><br />
149
- * Do not confuse <code>czm_viewportTransformation</code> with {@link czm_viewportOrthographic}.
150
- * The former transforms from normalized device coordinates to window coordinates; the later transforms
151
- * from window coordinates to clip coordinates, and is often used to assign to <code>gl_Position</code>.
152
- * <br /><br />
153
- * Like all automatic uniforms, <code>czm_viewportTransformation</code> does not need to be explicitly declared.
154
- * However, it can be explicitly declared when a shader is also used by other applications such
155
- * as a third-party authoring tool.
156
- *
157
- * @alias czm_viewportTransformation
158
- * @glslUniform
159
- *
160
- * @see UniformState#getViewportTransformation
161
- * @see czm_viewport
162
- * @see czm_viewportOrthographic
163
- * @see czm_modelToWindowCoordinates
164
- * @see BillboardCollection
165
- *
166
- * @example
167
- * // GLSL declaration
168
- * uniform mat4 czm_viewportTransformation;
169
- *
170
- * // Use czm_viewportTransformation as part of the
171
- * // transform from model to window coordinates.
172
- * vec4 q = czm_modelViewProjection * positionMC; // model to clip coordinates
173
- * q.xyz /= q.w; // clip to normalized device coordinates (ndc)
174
- * q.xyz = (czm_viewportTransformation * vec4(q.xyz, 1.0)).xyz; // ndc to window coordinates
175
- */
176
- czm_viewportTransformation : {
177
- getSize : function() {
178
- return 1;
179
- },
180
-
181
- getDatatype : function() {
182
- return UniformDatatype.FLOAT_MATRIX4;
183
- },
184
-
185
- getValue : function(uniformState) {
186
- return uniformState.getViewportTransformation();
187
- }
188
- },
189
-
190
- /**
191
- * An automatic GLSL uniform representing a 4x4 model transformation matrix that
192
- * transforms model coordinates to world coordinates.
193
- * <br /><br />
194
- * Like all automatic uniforms, <code>czm_model</code> does not need to be explicitly declared.
195
- * However, it can be explicitly declared when a shader is also used by other applications such
196
- * as a third-party authoring tool.
197
- *
198
- * @alias czm_model
199
- * @glslUniform
200
- *
201
- * @see UniformState#getModel
202
- * @see czm_inverseModel
203
- * @see czm_modelView
204
- * @see czm_modelViewProjection
205
- *
206
- * @example
207
- * // GLSL declaration
208
- * uniform mat4 czm_model;
209
- *
210
- * // Example
211
- * vec4 worldPosition = czm_model * modelPosition;
212
- */
213
- czm_model : {
214
- getSize : function() {
215
- return 1;
216
- },
217
-
218
- getDatatype : function() {
219
- return UniformDatatype.FLOAT_MATRIX4;
220
- },
221
-
222
- getValue : function(uniformState) {
223
- return uniformState.getModel();
224
- }
225
- },
226
-
227
- /**
228
- * An automatic GLSL uniform representing a 4x4 model transformation matrix that
229
- * transforms world coordinates to model coordinates.
230
- * <br /><br />
231
- * Like all automatic uniforms, <code>czm_inverseModel</code> does not need to be explicitly declared.
232
- * However, it can be explicitly declared when a shader is also used by other applications such
233
- * as a third-party authoring tool.
234
- *
235
- * @alias czm_inverseModel
236
- * @glslUniform
237
- *
238
- * @see UniformState#getInverseModel
239
- * @see czm_model
240
- * @see czm_inverseModelView
241
- *
242
- * @example
243
- * // GLSL declaration
244
- * uniform mat4 czm_inverseModel;
245
- *
246
- * // Example
247
- * vec4 modelPosition = czm_inverseModel * worldPosition;
248
- */
249
- czm_inverseModel : {
250
- getSize : function() {
251
- return 1;
252
- },
253
-
254
- getDatatype : function() {
255
- return UniformDatatype.FLOAT_MATRIX4;
256
- },
257
-
258
- getValue : function(uniformState) {
259
- return uniformState.getInverseModel();
260
- }
261
- },
262
-
263
- /**
264
- * An automatic GLSL uniform representing a 4x4 view transformation matrix that
265
- * transforms world coordinates to eye coordinates.
266
- * <br /><br />
267
- * Like all automatic uniforms, <code>czm_view</code> does not need to be explicitly declared.
268
- * However, it can be explicitly declared when a shader is also used by other applications such
269
- * as a third-party authoring tool.
270
- *
271
- * @alias czm_view
272
- * @glslUniform
273
- *
274
- * @see UniformState#getView
275
- * @see czm_viewRotation
276
- * @see czm_modelView
277
- * @see czm_viewProjection
278
- * @see czm_modelViewProjection
279
- * @see czm_inverseView
280
- *
281
- * @example
282
- * // GLSL declaration
283
- * uniform mat4 czm_view;
284
- *
285
- * // Example
286
- * vec4 eyePosition = czm_view * worldPosition;
287
- */
288
- czm_view : {
289
- getSize : function() {
290
- return 1;
291
- },
292
-
293
- getDatatype : function() {
294
- return UniformDatatype.FLOAT_MATRIX4;
295
- },
296
-
297
- getValue : function(uniformState) {
298
- return uniformState.getView();
299
- }
300
- },
301
-
302
- /**
303
- * An automatic GLSL uniform representing a 4x4 view transformation matrix that
304
- * transforms 3D world coordinates to eye coordinates. In 3D mode, this is identical to
305
- * {@link czm_view}, but in 2D and Columbus View it represents the view matrix
306
- * as if the camera were at an equivalent location in 3D mode. This is useful for lighting
307
- * 2D and Columbus View in the same way that 3D is lit.
308
- * <br /><br />
309
- * Like all automatic uniforms, <code>czm_view3D</code> does not need to be explicitly declared.
310
- * However, it can be explicitly declared when a shader is also used by other applications such
311
- * as a third-party authoring tool.
312
- *
313
- * @alias czm_view3D
314
- * @glslUniform
315
- *
316
- * @see UniformState#getView3D
317
- * @see czm_view
318
- *
319
- * @example
320
- * // GLSL declaration
321
- * uniform mat4 czm_view3D;
322
- *
323
- * // Example
324
- * vec4 eyePosition3D = czm_view3D * worldPosition3D;
325
- */
326
- czm_view3D : {
327
- getSize : function() {
328
- return 1;
329
- },
330
-
331
- getDatatype : function() {
332
- return UniformDatatype.FLOAT_MATRIX4;
333
- },
334
-
335
- getValue : function(uniformState) {
336
- return uniformState.getView3D();
337
- }
338
- },
339
-
340
- /**
341
- * An automatic GLSL uniform representing a 3x3 view rotation matrix that
342
- * transforms vectors in world coordinates to eye coordinates.
343
- * <br /><br />
344
- * Like all automatic uniforms, <code>czm_viewRotation</code> does not need to be explicitly declared.
345
- * However, it can be explicitly declared when a shader is also used by other applications such
346
- * as a third-party authoring tool.
347
- *
348
- * @alias czm_viewRotation
349
- * @glslUniform
350
- *
351
- * @see UniformState#getViewRotation
352
- * @see czm_view
353
- * @see czm_inverseView
354
- * @see czm_inverseViewRotation
355
- *
356
- * @example
357
- * // GLSL declaration
358
- * uniform mat3 czm_viewRotation;
359
- *
360
- * // Example
361
- * vec3 eyeVector = czm_viewRotation * worldVector;
362
- */
363
- czm_viewRotation : {
364
- getSize : function() {
365
- return 1;
366
- },
367
-
368
- getDatatype : function() {
369
- return UniformDatatype.FLOAT_MATRIX3;
370
- },
371
-
372
- getValue : function(uniformState) {
373
- return uniformState.getViewRotation();
374
- }
375
- },
376
-
377
- /**
378
- * An automatic GLSL uniform representing a 3x3 view rotation matrix that
379
- * transforms vectors in 3D world coordinates to eye coordinates. In 3D mode, this is identical to
380
- * {@link czm_viewRotation}, but in 2D and Columbus View it represents the view matrix
381
- * as if the camera were at an equivalent location in 3D mode. This is useful for lighting
382
- * 2D and Columbus View in the same way that 3D is lit.
383
- * <br /><br />
384
- * Like all automatic uniforms, <code>czm_viewRotation3D</code> does not need to be explicitly declared.
385
- * However, it can be explicitly declared when a shader is also used by other applications such
386
- * as a third-party authoring tool.
387
- *
388
- * @alias czm_viewRotation3D
389
- * @glslUniform
390
- *
391
- * @see UniformState#getViewRotation3D
392
- * @see czm_viewRotation
393
- *
394
- * @example
395
- * // GLSL declaration
396
- * uniform mat3 czm_viewRotation3D;
397
- *
398
- * // Example
399
- * vec3 eyeVector = czm_viewRotation3D * worldVector;
400
- */
401
- czm_viewRotation3D : {
402
- getSize : function() {
403
- return 1;
404
- },
405
-
406
- getDatatype : function() {
407
- return UniformDatatype.FLOAT_MATRIX3;
408
- },
409
-
410
- getValue : function(uniformState) {
411
- return uniformState.getViewRotation3D();
412
- }
413
- },
414
-
415
- /**
416
- * An automatic GLSL uniform representing a 4x4 transformation matrix that
417
- * transforms from eye coordinates to world coordinates.
418
- * <br /><br />
419
- * Like all automatic uniforms, <code>czm_inverseView</code> does not need to be explicitly declared.
420
- * However, it can be explicitly declared when a shader is also used by other applications such
421
- * as a third-party authoring tool.
422
- *
423
- * @alias czm_inverseView
424
- * @glslUniform
425
- *
426
- * @see UniformState#getInverseView
427
- * @see czm_view
428
- * @see czm_inverseNormal
429
- *
430
- * @example
431
- * // GLSL declaration
432
- * uniform mat4 czm_inverseView;
433
- *
434
- * // Example
435
- * vec4 worldPosition = czm_inverseView * eyePosition;
436
- */
437
- czm_inverseView : {
438
- getSize : function() {
439
- return 1;
440
- },
441
-
442
- getDatatype : function() {
443
- return UniformDatatype.FLOAT_MATRIX4;
444
- },
445
-
446
- getValue : function(uniformState) {
447
- return uniformState.getInverseView();
448
- }
449
- },
450
-
451
- /**
452
- * An automatic GLSL uniform representing a 4x4 transformation matrix that
453
- * transforms from 3D eye coordinates to world coordinates. In 3D mode, this is identical to
454
- * {@link czm_inverseView}, but in 2D and Columbus View it represents the inverse view matrix
455
- * as if the camera were at an equivalent location in 3D mode. This is useful for lighting
456
- * 2D and Columbus View in the same way that 3D is lit.
457
- * <br /><br />
458
- * Like all automatic uniforms, <code>czm_inverseView3D</code> does not need to be explicitly declared.
459
- * However, it can be explicitly declared when a shader is also used by other applications such
460
- * as a third-party authoring tool.
461
- *
462
- * @alias czm_inverseView3D
463
- * @glslUniform
464
- *
465
- * @see UniformState#getInverseView3D
466
- * @see czm_inverseView
467
- *
468
- * @example
469
- * // GLSL declaration
470
- * uniform mat4 czm_inverseView3D;
471
- *
472
- * // Example
473
- * vec4 worldPosition = czm_inverseView3D * eyePosition;
474
- */
475
- czm_inverseView3D : {
476
- getSize : function() {
477
- return 1;
478
- },
479
-
480
- getDatatype : function() {
481
- return UniformDatatype.FLOAT_MATRIX4;
482
- },
483
-
484
- getValue : function(uniformState) {
485
- return uniformState.getInverseView3D();
486
- }
487
- },
488
-
489
- /**
490
- * An automatic GLSL uniform representing a 3x3 rotation matrix that
491
- * transforms vectors from eye coordinates to world coordinates.
492
- * <br /><br />
493
- * Like all automatic uniforms, <code>czm_inverseViewRotation</code> does not need to be explicitly declared.
494
- * However, it can be explicitly declared when a shader is also used by other applications such
495
- * as a third-party authoring tool.
496
- *
497
- * @alias czm_inverseViewRotation
498
- * @glslUniform
499
- *
500
- * @see UniformState#getInverseView
501
- * @see czm_view
502
- * @see czm_viewRotation
503
- * @see czm_inverseViewRotation
504
- *
505
- * @example
506
- * // GLSL declaration
507
- * uniform mat3 czm_inverseViewRotation;
508
- *
509
- * // Example
510
- * vec4 worldVector = czm_inverseViewRotation * eyeVector;
511
- */
512
- czm_inverseViewRotation : {
513
- getSize : function() {
514
- return 1;
515
- },
516
-
517
- getDatatype : function() {
518
- return UniformDatatype.FLOAT_MATRIX3;
519
- },
520
-
521
- getValue : function(uniformState) {
522
- return uniformState.getInverseViewRotation();
523
- }
524
- },
525
-
526
- /**
527
- * An automatic GLSL uniform representing a 3x3 rotation matrix that
528
- * transforms vectors from 3D eye coordinates to world coordinates. In 3D mode, this is identical to
529
- * {@link czm_inverseViewRotation}, but in 2D and Columbus View it represents the inverse view matrix
530
- * as if the camera were at an equivalent location in 3D mode. This is useful for lighting
531
- * 2D and Columbus View in the same way that 3D is lit.
532
- * <br /><br />
533
- * Like all automatic uniforms, <code>czm_inverseViewRotation3D</code> does not need to be explicitly declared.
534
- * However, it can be explicitly declared when a shader is also used by other applications such
535
- * as a third-party authoring tool.
536
- *
537
- * @alias czm_inverseViewRotation3D
538
- * @glslUniform
539
- *
540
- * @see UniformState#getInverseView3D
541
- * @see czm_inverseViewRotation
542
- *
543
- * @example
544
- * // GLSL declaration
545
- * uniform mat3 czm_inverseViewRotation3D;
546
- *
547
- * // Example
548
- * vec4 worldVector = czm_inverseViewRotation3D * eyeVector;
549
- */
550
- czm_inverseViewRotation3D : {
551
- getSize : function() {
552
- return 1;
553
- },
554
-
555
- getDatatype : function() {
556
- return UniformDatatype.FLOAT_MATRIX3;
557
- },
558
-
559
- getValue : function(uniformState) {
560
- return uniformState.getInverseViewRotation3D();
561
- }
562
- },
563
-
564
- /**
565
- * An automatic GLSL uniform representing a 4x4 projection transformation matrix that
566
- * transforms eye coordinates to clip coordinates. Clip coordinates is the
567
- * coordinate system for a vertex shader's <code>gl_Position</code> output.
568
- * <br /><br />
569
- * Like all automatic uniforms, <code>czm_projection</code> does not need to be explicitly declared.
570
- * However, it can be explicitly declared when a shader is also used by other applications such
571
- * as a third-party authoring tool.
572
- *
573
- * @alias czm_projection
574
- * @glslUniform
575
- *
576
- * @see UniformState#getProjection
577
- * @see czm_viewProjection
578
- * @see czm_modelViewProjection
579
- * @see czm_infiniteProjection
580
- *
581
- * @example
582
- * // GLSL declaration
583
- * uniform mat4 czm_projection;
584
- *
585
- * // Example
586
- * gl_Position = czm_projection * eyePosition;
587
- */
588
- czm_projection : {
589
- getSize : function() {
590
- return 1;
591
- },
592
-
593
- getDatatype : function() {
594
- return UniformDatatype.FLOAT_MATRIX4;
595
- },
596
-
597
- getValue : function(uniformState) {
598
- return uniformState.getProjection();
599
- }
600
- },
601
-
602
- /**
603
- * An automatic GLSL uniform representing a 4x4 inverse projection transformation matrix that
604
- * transforms from clip coordinates to eye coordinates. Clip coordinates is the
605
- * coordinate system for a vertex shader's <code>gl_Position</code> output.
606
- * <br /><br />
607
- * Like all automatic uniforms, <code>czm_inverseProjection</code> does not need to be explicitly declared.
608
- * However, it can be explicitly declared when a shader is also used by other applications such
609
- * as a third-party authoring tool.
610
- *
611
- * @alias czm_inverseProjection
612
- * @glslUniform
613
- *
614
- * @see UniformState#getInverseProjection
615
- * @see czm_projection
616
- *
617
- * @example
618
- * // GLSL declaration
619
- * uniform mat4 czm_inverseProjection;
620
- *
621
- * // Example
622
- * vec4 eyePosition = czm_inverseProjection * clipPosition;
623
- */
624
- czm_inverseProjection : {
625
- getSize : function() {
626
- return 1;
627
- },
628
-
629
- getDatatype : function() {
630
- return UniformDatatype.FLOAT_MATRIX4;
631
- },
632
-
633
- getValue : function(uniformState) {
634
- return uniformState.getInverseProjection();
635
- }
636
- },
637
-
638
- /**
639
- * An automatic GLSL uniform representing a 4x4 projection transformation matrix with the far plane at infinity,
640
- * that transforms eye coordinates to clip coordinates. Clip coordinates is the
641
- * coordinate system for a vertex shader's <code>gl_Position</code> output. An infinite far plane is used
642
- * in algorithms like shadow volumes and GPU ray casting with proxy geometry to ensure that triangles
643
- * are not clipped by the far plane.
644
- * <br /><br />
645
- * Like all automatic uniforms, <code>czm_infiniteProjection</code> does not need to be explicitly declared.
646
- * However, it can be explicitly declared when a shader is also used by other applications such
647
- * as a third-party authoring tool.
648
- *
649
- * @alias czm_infiniteProjection
650
- * @glslUniform
651
- *
652
- * @see UniformState#getInfiniteProjection
653
- * @see czm_projection
654
- * @see czm_modelViewInfiniteProjection
655
- *
656
- * @example
657
- * // GLSL declaration
658
- * uniform mat4 czm_infiniteProjection;
659
- *
660
- * // Example
661
- * gl_Position = czm_infiniteProjection * eyePosition;
662
- */
663
- czm_infiniteProjection : {
664
- getSize : function() {
665
- return 1;
666
- },
667
-
668
- getDatatype : function() {
669
- return UniformDatatype.FLOAT_MATRIX4;
670
- },
671
-
672
- getValue : function(uniformState) {
673
- return uniformState.getInfiniteProjection();
674
- }
675
- },
676
-
677
- /**
678
- * An automatic GLSL uniform representing a 4x4 model-view transformation matrix that
679
- * transforms model coordinates to eye coordinates.
680
- * <br /><br />
681
- * Positions should be transformed to eye coordinates using <code>czm_modelView</code> and
682
- * normals should be transformed using {@link czm_normal}.
683
- * <br /><br />
684
- * Like all automatic uniforms, <code>czm_modelView</code> does not need to be explicitly declared.
685
- * However, it can be explicitly declared when a shader is also used by other applications such
686
- * as a third-party authoring tool.
687
- *
688
- * @alias czm_modelView
689
- * @glslUniform
690
- *
691
- * @see UniformState#getModelView
692
- * @see czm_model
693
- * @see czm_view
694
- * @see czm_modelViewProjection
695
- * @see czm_normal
696
- *
697
- * @example
698
- * // GLSL declaration
699
- * uniform mat4 czm_modelView;
700
- *
701
- * // Example
702
- * vec4 eyePosition = czm_modelView * modelPosition;
703
- *
704
- * // The above is equivalent to, but more efficient than:
705
- * vec4 eyePosition = czm_view * czm_model * modelPosition;
706
- */
707
- czm_modelView : {
708
- getSize : function() {
709
- return 1;
710
- },
711
-
712
- getDatatype : function() {
713
- return UniformDatatype.FLOAT_MATRIX4;
714
- },
715
-
716
- getValue : function(uniformState) {
717
- return uniformState.getModelView();
718
- }
719
- },
720
-
721
- /**
722
- * An automatic GLSL uniform representing a 4x4 model-view transformation matrix that
723
- * transforms 3D model coordinates to eye coordinates. In 3D mode, this is identical to
724
- * {@link czm_modelView}, but in 2D and Columbus View it represents the model-view matrix
725
- * as if the camera were at an equivalent location in 3D mode. This is useful for lighting
726
- * 2D and Columbus View in the same way that 3D is lit.
727
- * <br /><br />
728
- * Positions should be transformed to eye coordinates using <code>czm_modelView3D</code> and
729
- * normals should be transformed using {@link czm_normal3D}.
730
- * <br /><br />
731
- * Like all automatic uniforms, <code>czm_modelView3D</code> does not need to be explicitly declared.
732
- * However, it can be explicitly declared when a shader is also used by other applications such
733
- * as a third-party authoring tool.
734
- *
735
- * @alias czm_modelView3D
736
- * @glslUniform
737
- *
738
- * @see UniformState#getModelView3D
739
- * @see czm_modelView
740
- *
741
- * @example
742
- * // GLSL declaration
743
- * uniform mat4 czm_modelView3D;
744
- *
745
- * // Example
746
- * vec4 eyePosition = czm_modelView3D * modelPosition;
747
- *
748
- * // The above is equivalent to, but more efficient than:
749
- * vec4 eyePosition = czm_view3D * czm_model * modelPosition;
750
- */
751
- czm_modelView3D : {
752
- getSize : function() {
753
- return 1;
754
- },
755
-
756
- getDatatype : function() {
757
- return UniformDatatype.FLOAT_MATRIX4;
758
- },
759
-
760
- getValue : function(uniformState) {
761
- return uniformState.getModelView3D();
762
- }
763
- },
764
-
765
- /**
766
- * An automatic GLSL uniform representing a 4x4 model-view transformation matrix that
767
- * transforms model coordinates, relative to the eye, to eye coordinates. This is used
768
- * in conjunction with {@link czm_translateRelativeToEye}.
769
- * <br /><br />
770
- * Like all automatic uniforms, <code>czm_modelViewRelativeToEye</code> does not need to be explicitly declared.
771
- * However, it can be explicitly declared when a shader is also used by other applications such
772
- * as a third-party authoring tool.
773
- *
774
- * @alias czm_modelViewRelativeToEye
775
- * @glslUniform
776
- *
777
- * @example
778
- * // GLSL declaration
779
- * uniform mat4 czm_modelViewRelativeToEye;
780
- *
781
- * // Example
782
- * attribute vec3 positionHigh;
783
- * attribute vec3 positionLow;
784
- *
785
- * void main()
786
- * {
787
- * vec4 p = czm_translateRelativeToEye(positionHigh, positionLow);
788
- * gl_Position = czm_projection * (czm_modelViewRelativeToEye * p);
789
- * }
790
- *
791
- * @see czm_modelViewProjectionRelativeToEye
792
- * @see czm_translateRelativeToEye
793
- * @see EncodedCartesian3
794
- */
795
- czm_modelViewRelativeToEye : {
796
- getSize : function() {
797
- return 1;
798
- },
799
-
800
- getDatatype : function() {
801
- return UniformDatatype.FLOAT_MATRIX4;
802
- },
803
-
804
- getValue : function(uniformState) {
805
- return uniformState.getModelViewRelativeToEye();
806
- }
807
- },
808
-
809
- /**
810
- * An automatic GLSL uniform representing a 4x4 transformation matrix that
811
- * transforms from eye coordinates to model coordinates.
812
- * <br /><br />
813
- * Like all automatic uniforms, <code>czm_inverseModelView</code> does not need to be explicitly declared.
814
- * However, it can be explicitly declared when a shader is also used by other applications such
815
- * as a third-party authoring tool.
816
- *
817
- * @alias czm_inverseModelView
818
- * @glslUniform
819
- *
820
- * @see UniformState#getInverseModelView
821
- * @see czm_modelView
822
- *
823
- * @example
824
- * // GLSL declaration
825
- * uniform mat4 czm_inverseModelView;
826
- *
827
- * // Example
828
- * vec4 modelPosition = czm_inverseModelView * eyePosition;
829
- */
830
- czm_inverseModelView : {
831
- getSize : function() {
832
- return 1;
833
- },
834
-
835
- getDatatype : function() {
836
- return UniformDatatype.FLOAT_MATRIX4;
837
- },
838
-
839
- getValue : function(uniformState) {
840
- return uniformState.getInverseModelView();
841
- }
842
- },
843
-
844
- /**
845
- * An automatic GLSL uniform representing a 4x4 transformation matrix that
846
- * transforms from eye coordinates to 3D model coordinates. In 3D mode, this is identical to
847
- * {@link czm_inverseModelView}, but in 2D and Columbus View it represents the inverse model-view matrix
848
- * as if the camera were at an equivalent location in 3D mode. This is useful for lighting
849
- * 2D and Columbus View in the same way that 3D is lit.
850
- * <br /><br />
851
- * Like all automatic uniforms, <code>czm_inverseModelView3D</code> does not need to be explicitly declared.
852
- * However, it can be explicitly declared when a shader is also used by other applications such
853
- * as a third-party authoring tool.
854
- *
855
- * @alias czm_inverseModelView3D
856
- * @glslUniform
857
- *
858
- * @see UniformState#getInverseModelView
859
- * @see czm_inverseModelView
860
- * @see czm_modelView3D
861
- *
862
- * @example
863
- * // GLSL declaration
864
- * uniform mat4 czm_inverseModelView3D;
865
- *
866
- * // Example
867
- * vec4 modelPosition = czm_inverseModelView3D * eyePosition;
868
- */
869
- czm_inverseModelView3D : {
870
- getSize : function() {
871
- return 1;
872
- },
873
-
874
- getDatatype : function() {
875
- return UniformDatatype.FLOAT_MATRIX4;
876
- },
877
-
878
- getValue : function(uniformState) {
879
- return uniformState.getInverseModelView3D();
880
- }
881
- },
882
-
883
- /**
884
- * An automatic GLSL uniform representing a 4x4 view-projection transformation matrix that
885
- * transforms world coordinates to clip coordinates. Clip coordinates is the
886
- * coordinate system for a vertex shader's <code>gl_Position</code> output.
887
- * <br /><br />
888
- * Like all automatic uniforms, <code>czm_viewProjection</code> does not need to be explicitly declared.
889
- * However, it can be explicitly declared when a shader is also used by other applications such
890
- * as a third-party authoring tool.
891
- *
892
- * @alias czm_viewProjection
893
- * @glslUniform
894
- *
895
- * @see UniformState#getViewProjection
896
- * @see czm_view
897
- * @see czm_projection
898
- * @see czm_modelViewProjection
899
- *
900
- * @example
901
- * // GLSL declaration
902
- * uniform mat4 czm_viewProjection;
903
- *
904
- * // Example
905
- * vec4 gl_Position = czm_viewProjection * czm_model * modelPosition;
906
- *
907
- * // The above is equivalent to, but more efficient than:
908
- * gl_Position = czm_projection * czm_view * czm_model * modelPosition;
909
- */
910
- czm_viewProjection : {
911
- getSize : function() {
912
- return 1;
913
- },
914
-
915
- getDatatype : function() {
916
- return UniformDatatype.FLOAT_MATRIX4;
917
- },
918
-
919
- getValue : function(uniformState) {
920
- return uniformState.getViewProjection();
921
- }
922
- },
923
-
924
- /**
925
- * An automatic GLSL uniform representing a 4x4 model-view-projection transformation matrix that
926
- * transforms model coordinates to clip coordinates. Clip coordinates is the
927
- * coordinate system for a vertex shader's <code>gl_Position</code> output.
928
- * <br /><br />
929
- * Like all automatic uniforms, <code>czm_modelViewProjection</code> does not need to be explicitly declared.
930
- * However, it can be explicitly declared when a shader is also used by other applications such
931
- * as a third-party authoring tool.
932
- *
933
- * @alias czm_modelViewProjection
934
- * @glslUniform
935
- *
936
- * @see UniformState#getModelViewProjection
937
- * @see czm_model
938
- * @see czm_view
939
- * @see czm_projection
940
- * @see czm_modelView
941
- * @see czm_viewProjection
942
- * @see czm_modelViewInfiniteProjection
943
- *
944
- * @example
945
- * // GLSL declaration
946
- * uniform mat4 czm_modelViewProjection;
947
- *
948
- * // Example
949
- * vec4 gl_Position = czm_modelViewProjection * modelPosition;
950
- *
951
- * // The above is equivalent to, but more efficient than:
952
- * gl_Position = czm_projection * czm_view * czm_model * modelPosition;
953
- */
954
- czm_modelViewProjection : {
955
- getSize : function() {
956
- return 1;
957
- },
958
-
959
- getDatatype : function() {
960
- return UniformDatatype.FLOAT_MATRIX4;
961
- },
962
-
963
- getValue : function(uniformState) {
964
- return uniformState.getModelViewProjection();
965
- }
966
- },
967
-
968
- /**
969
- * An automatic GLSL uniform representing a 4x4 model-view-projection transformation matrix that
970
- * transforms model coordinates, relative to the eye, to clip coordinates. Clip coordinates is the
971
- * coordinate system for a vertex shader's <code>gl_Position</code> output. This is used in
972
- * conjunction with {@link czm_translateRelativeToEye}.
973
- * <br /><br />
974
- * Like all automatic uniforms, <code>czm_modelViewProjectionRelativeToEye</code> does not need to be explicitly declared.
975
- * However, it can be explicitly declared when a shader is also used by other applications such
976
- * as a third-party authoring tool.
977
- *
978
- * @alias czm_modelViewProjectionRelativeToEye
979
- * @glslUniform
980
- *
981
- * @example
982
- * // GLSL declaration
983
- * uniform mat4 czm_modelViewProjectionRelativeToEye;
984
- *
985
- * // Example
986
- * attribute vec3 positionHigh;
987
- * attribute vec3 positionLow;
988
- *
989
- * void main()
990
- * {
991
- * vec4 p = czm_translateRelativeToEye(positionHigh, positionLow);
992
- * gl_Position = czm_modelViewProjectionRelativeToEye * p;
993
- * }
994
- *
995
- * @see czm_modelViewRelativeToEye
996
- * @see czm_translateRelativeToEye
997
- * @see EncodedCartesian3
998
- */
999
- czm_modelViewProjectionRelativeToEye : {
1000
- getSize : function() {
1001
- return 1;
1002
- },
1003
-
1004
- getDatatype : function() {
1005
- return UniformDatatype.FLOAT_MATRIX4;
1006
- },
1007
-
1008
- getValue : function(uniformState) {
1009
- return uniformState.getModelViewProjectionRelativeToEye();
1010
- }
1011
- },
1012
-
1013
- /**
1014
- * An automatic GLSL uniform representing a 4x4 model-view-projection transformation matrix that
1015
- * transforms model coordinates to clip coordinates. Clip coordinates is the
1016
- * coordinate system for a vertex shader's <code>gl_Position</code> output. The projection matrix places
1017
- * the far plane at infinity. This is useful in algorithms like shadow volumes and GPU ray casting with
1018
- * proxy geometry to ensure that triangles are not clipped by the far plane.
1019
- * <br /><br />
1020
- * Like all automatic uniforms, <code>czm_modelViewInfiniteProjection</code> does not need to be explicitly declared.
1021
- * However, it can be explicitly declared when a shader is also used by other applications such
1022
- * as a third-party authoring tool.
1023
- *
1024
- * @alias czm_modelViewInfiniteProjection
1025
- * @glslUniform
1026
- *
1027
- * @see UniformState#getModelViewInfiniteProjection
1028
- * @see czm_model
1029
- * @see czm_view
1030
- * @see czm_infiniteProjection
1031
- * @see czm_modelViewProjection
1032
- *
1033
- * @example
1034
- * // GLSL declaration
1035
- * uniform mat4 czm_modelViewInfiniteProjection;
1036
- *
1037
- * // Example
1038
- * vec4 gl_Position = czm_modelViewInfiniteProjection * modelPosition;
1039
- *
1040
- * // The above is equivalent to, but more efficient than:
1041
- * gl_Position = czm_infiniteProjection * czm_view * czm_model * modelPosition;
1042
- */
1043
- czm_modelViewInfiniteProjection : {
1044
- getSize : function() {
1045
- return 1;
1046
- },
1047
-
1048
- getDatatype : function() {
1049
- return UniformDatatype.FLOAT_MATRIX4;
1050
- },
1051
-
1052
- getValue : function(uniformState) {
1053
- return uniformState.getModelViewInfiniteProjection();
1054
- }
1055
- },
1056
-
1057
- /**
1058
- * An automatic GLSL uniform representing a 3x3 normal transformation matrix that
1059
- * transforms normal vectors in model coordinates to eye coordinates.
1060
- * <br /><br />
1061
- * Positions should be transformed to eye coordinates using {@link czm_modelView} and
1062
- * normals should be transformed using <code>czm_normal</code>.
1063
- * <br /><br />
1064
- * Like all automatic uniforms, <code>czm_normal</code> does not need to be explicitly declared.
1065
- * However, it can be explicitly declared when a shader is also used by other applications such
1066
- * as a third-party authoring tool.
1067
- *
1068
- * @alias czm_normal
1069
- * @glslUniform
1070
- *
1071
- * @see UniformState#getNormal
1072
- * @see czm_inverseNormal
1073
- * @see czm_modelView
1074
- *
1075
- * @example
1076
- * // GLSL declaration
1077
- * uniform mat3 czm_normal;
1078
- *
1079
- * // Example
1080
- * vec3 eyeNormal = czm_normal * normal;
1081
- */
1082
- czm_normal : {
1083
- getSize : function() {
1084
- return 1;
1085
- },
1086
-
1087
- getDatatype : function() {
1088
- return UniformDatatype.FLOAT_MATRIX3;
1089
- },
1090
-
1091
- getValue : function(uniformState) {
1092
- return uniformState.getNormal();
1093
- }
1094
- },
1095
-
1096
- /**
1097
- * An automatic GLSL uniform representing a 3x3 normal transformation matrix that
1098
- * transforms normal vectors in 3D model coordinates to eye coordinates.
1099
- * In 3D mode, this is identical to
1100
- * {@link czm_normal}, but in 2D and Columbus View it represents the normal transformation
1101
- * matrix as if the camera were at an equivalent location in 3D mode. This is useful for lighting
1102
- * 2D and Columbus View in the same way that 3D is lit.
1103
- * <br /><br />
1104
- * Positions should be transformed to eye coordinates using {@link czm_modelView3D} and
1105
- * normals should be transformed using <code>czm_normal3D</code>.
1106
- * <br /><br />
1107
- * Like all automatic uniforms, <code>czm_normal3D</code> does not need to be explicitly declared.
1108
- * However, it can be explicitly declared when a shader is also used by other applications such
1109
- * as a third-party authoring tool.
1110
- *
1111
- * @alias czm_normal3D
1112
- * @glslUniform
1113
- *
1114
- * @see UniformState#getNormal3D
1115
- * @see czm_normal
1116
- *
1117
- * @example
1118
- * // GLSL declaration
1119
- * uniform mat3 czm_normal3D;
1120
- *
1121
- * // Example
1122
- * vec3 eyeNormal = czm_normal3D * normal;
1123
- */
1124
- czm_normal3D : {
1125
- getSize : function() {
1126
- return 1;
1127
- },
1128
-
1129
- getDatatype : function() {
1130
- return UniformDatatype.FLOAT_MATRIX3;
1131
- },
1132
-
1133
- getValue : function(uniformState) {
1134
- return uniformState.getNormal3D();
1135
- }
1136
- },
1137
-
1138
- /**
1139
- * An automatic GLSL uniform representing a 3x3 normal transformation matrix that
1140
- * transforms normal vectors in eye coordinates to model coordinates. This is
1141
- * the opposite of the transform provided by {@link czm_normal}.
1142
- * <br /><br />
1143
- * Like all automatic uniforms, <code>czm_inverseNormal</code> does not need to be explicitly declared.
1144
- * However, it can be explicitly declared when a shader is also used by other applications such
1145
- * as a third-party authoring tool.
1146
- *
1147
- * @alias czm_inverseNormal
1148
- * @glslUniform
1149
- *
1150
- * @see UniformState#getInverseNormal
1151
- * @see czm_normal
1152
- * @see czm_modelView
1153
- * @see czm_inverseView
1154
- *
1155
- * @example
1156
- * // GLSL declaration
1157
- * uniform mat3 czm_inverseNormal;
1158
- *
1159
- * // Example
1160
- * vec3 normalMC = czm_inverseNormal * normalEC;
1161
- */
1162
- czm_inverseNormal : {
1163
- getSize : function() {
1164
- return 1;
1165
- },
1166
-
1167
- getDatatype : function() {
1168
- return UniformDatatype.FLOAT_MATRIX3;
1169
- },
1170
-
1171
- getValue : function(uniformState) {
1172
- return uniformState.getInverseNormal();
1173
- }
1174
- },
1175
-
1176
- /**
1177
- * An automatic GLSL uniform representing a 3x3 normal transformation matrix that
1178
- * transforms normal vectors in eye coordinates to 3D model coordinates. This is
1179
- * the opposite of the transform provided by {@link czm_normal}.
1180
- * In 3D mode, this is identical to
1181
- * {@link czm_inverseNormal}, but in 2D and Columbus View it represents the inverse normal transformation
1182
- * matrix as if the camera were at an equivalent location in 3D mode. This is useful for lighting
1183
- * 2D and Columbus View in the same way that 3D is lit.
1184
- * <br /><br />
1185
- * Like all automatic uniforms, <code>czm_inverseNormal3D</code> does not need to be explicitly declared.
1186
- * However, it can be explicitly declared when a shader is also used by other applications such
1187
- * as a third-party authoring tool.
1188
- *
1189
- * @alias czm_inverseNormal3D
1190
- * @glslUniform
1191
- *
1192
- * @see UniformState#getInverseNormal3D
1193
- * @see czm_inverseNormal
1194
- *
1195
- * @example
1196
- * // GLSL declaration
1197
- * uniform mat3 czm_inverseNormal3D;
1198
- *
1199
- * // Example
1200
- * vec3 normalMC = czm_inverseNormal3D * normalEC;
1201
- */
1202
- czm_inverseNormal3D : {
1203
- getSize : function() {
1204
- return 1;
1205
- },
1206
-
1207
- getDatatype : function() {
1208
- return UniformDatatype.FLOAT_MATRIX3;
1209
- },
1210
-
1211
- getValue : function(uniformState) {
1212
- return uniformState.getInverseNormal3D();
1213
- }
1214
- },
1215
-
1216
- /**
1217
- * An automatic GLSL uniform containing the near distance (<code>x</code>) and the far distance (<code>y</code>)
1218
- * of the frustum defined by the camera. This is the largest possible frustum, not an individual
1219
- * frustum used for multi-frustum rendering.
1220
- * <br /><br />
1221
- * Like all automatic uniforms, <code>czm_entireFrustum</code> does not need to be explicitly declared.
1222
- * However, it can be explicitly declared when a shader is also used by other applications such
1223
- * as a third-party authoring tool.
1224
- *
1225
- * @alias czm_entireFrustum
1226
- * @glslUniform
1227
- *
1228
- * @see UniformState#getEntireFrustum
1229
- * @see czm_currentFrustum
1230
- *
1231
- * @example
1232
- * // GLSL declaration
1233
- * uniform vec2 czm_entireFrustum;
1234
- *
1235
- * // Example
1236
- * float frustumLength = czm_entireFrustum.y - czm_entireFrustum.x;
1237
- */
1238
- czm_entireFrustum : {
1239
- getSize : function() {
1240
- return 1;
1241
- },
1242
-
1243
- getDatatype : function() {
1244
- return UniformDatatype.FLOAT_VECTOR2;
1245
- },
1246
-
1247
- getValue : function(uniformState) {
1248
- return uniformState.getEntireFrustum();
1249
- }
1250
- },
1251
-
1252
- /**
1253
- * An automatic GLSL uniform containing height (<code>x</code>) and height squared (<code>y</code>)
1254
- * of the eye (camera) in the 2D scene in meters.
1255
- * <br /><br />
1256
- * Like all automatic uniforms, <code>czm_eyeHeight2D</code> does not need to be explicitly declared.
1257
- * However, it can be explicitly declared when a shader is also used by other applications such
1258
- * as a third-party authoring tool.
1259
- *
1260
- * @alias czm_eyeHeight2D
1261
- * @glslUniform
1262
- *
1263
- * @see UniformState#getEyeHeight2D
1264
- */
1265
- czm_eyeHeight2D : {
1266
- getSize : function() {
1267
- return 1;
1268
- },
1269
-
1270
- getDatatype : function() {
1271
- return UniformDatatype.FLOAT_VECTOR2;
1272
- },
1273
-
1274
- getValue : function(uniformState) {
1275
- return uniformState.getEyeHeight2D();
1276
- }
1277
- },
1278
-
1279
- /**
1280
- * An automatic GLSL uniform containing the near distance (<code>x</code>) and the far distance (<code>y</code>)
1281
- * of the frustum defined by the camera. This is the individual
1282
- * frustum used for multi-frustum rendering.
1283
- * <br /><br />
1284
- * Like all automatic uniforms, <code>czm_currentFrustum</code> does not need to be explicitly declared.
1285
- * However, it can be explicitly declared when a shader is also used by other applications such
1286
- * as a third-party authoring tool.
1287
- *
1288
- * @alias czm_currentFrustum
1289
- * @glslUniform
1290
- *
1291
- * @see UniformState#getCurrentFrustum
1292
- * @see czm_entireFrustum
1293
- *
1294
- * @example
1295
- * // GLSL declaration
1296
- * uniform vec2 czm_currentFrustum;
1297
- *
1298
- * // Example
1299
- * float frustumLength = czm_currentFrustum.y - czm_currentFrustum.x;
1300
- */
1301
- czm_currentFrustum : {
1302
- getSize : function() {
1303
- return 1;
1304
- },
1305
-
1306
- getDatatype : function() {
1307
- return UniformDatatype.FLOAT_VECTOR2;
1308
- },
1309
-
1310
- getValue : function(uniformState) {
1311
- return uniformState.getCurrentFrustum();
1312
- }
1313
- },
1314
-
1315
- /**
1316
- * An automatic GLSL uniform representing the size of a pixel in meters at a distance of one meter
1317
- * from the camera. The pixel size is linearly proportional to the distance from the camera.
1318
- * <br /><br />
1319
- * Like all automatic uniforms, <code>czm_pixelSizeInMeters</code> does not need to be explicitly declared.
1320
- * However, it can be explicitly declared when a shader is also used by other applications such
1321
- * as a third-party authoring tool.
1322
- *
1323
- * @alias czm_pixelSizeInMeters
1324
- * @glslUniform
1325
- *
1326
- * @example
1327
- * // GLSL declaration
1328
- * uniform float czm_pixelSizeInMeters;
1329
- *
1330
- * // Example: the pixel size at a position in eye coordinates
1331
- * float pixelSize = czm_pixelSizeInMeters * positionEC.z;
1332
- */
1333
- czm_pixelSizeInMeters : {
1334
- getSize : function() {
1335
- return 1;
1336
- },
1337
-
1338
- getDatatype : function() {
1339
- return UniformDatatype.FLOAT;
1340
- },
1341
-
1342
- getValue : function(uniformState) {
1343
- return uniformState.getPixelSize();
1344
- }
1345
- },
1346
-
1347
- /**
1348
- * An automatic GLSL uniform representing the sun position in world coordinates.
1349
- * <br /><br />
1350
- * Like all automatic uniforms, <code>czm_sunPositionWC</code> does not need to be explicitly declared.
1351
- * However, it can be explicitly declared when a shader is also used by other applications such
1352
- * as a third-party authoring tool.
1353
- *
1354
- * @alias czm_sunPositionWC
1355
- * @glslUniform
1356
- *
1357
- * @see UniformState#getSunPositionWC
1358
- * @see czm_sunPositionColumbusView
1359
- * @see czm_sunDirectionWC
1360
- *
1361
- * @example
1362
- * // GLSL declaration
1363
- * uniform vec3 czm_sunPositionWC;
1364
- */
1365
- czm_sunPositionWC : {
1366
- getSize : function() {
1367
- return 1;
1368
- },
1369
-
1370
- getDatatype : function() {
1371
- return UniformDatatype.FLOAT_VECTOR3;
1372
- },
1373
-
1374
- getValue : function(uniformState) {
1375
- return uniformState.getSunPositionWC();
1376
- }
1377
- },
1378
-
1379
- /**
1380
- * An automatic GLSL uniform representing the sun position in Columbus view world coordinates.
1381
- * <br /><br />
1382
- * Like all automatic uniforms, <code>czm_sunPositionColumbusView</code> does not need to be explicitly declared.
1383
- * However, it can be explicitly declared when a shader is also used by other applications such
1384
- * as a third-party authoring tool.
1385
- *
1386
- * @alias czm_sunPositionColumbusView
1387
- * @glslUniform
1388
- *
1389
- * @see UniformState#getSunPositionColumbusView
1390
- * @see czm_sunPositionWC
1391
- *
1392
- * @example
1393
- * // GLSL declaration
1394
- * uniform vec3 czm_sunPositionColumbusView;
1395
- */
1396
- czm_sunPositionColumbusView : {
1397
- getSize : function() {
1398
- return 1;
1399
- },
1400
-
1401
- getDatatype : function() {
1402
- return UniformDatatype.FLOAT_VECTOR3;
1403
- },
1404
-
1405
- getValue : function(uniformState) {
1406
- return uniformState.getSunPositionColumbusView();
1407
- }
1408
- },
1409
-
1410
- /**
1411
- * An automatic GLSL uniform representing the normalized direction to the sun in eye coordinates.
1412
- * This is commonly used for directional lighting computations.
1413
- * <br /><br />
1414
- * Like all automatic uniforms, <code>czm_sunDirectionEC</code> does not need to be explicitly declared.
1415
- * However, it can be explicitly declared when a shader is also used by other applications such
1416
- * as a third-party authoring tool.
1417
- *
1418
- * @alias czm_sunDirectionEC
1419
- * @glslUniform
1420
- *
1421
- * @see UniformState#getSunDirectionEC
1422
- * @see czm_moonDirectionEC
1423
- * @see czm_sunDirectionWC
1424
- *
1425
- * @example
1426
- * // GLSL declaration
1427
- * uniform vec3 czm_sunDirectionEC;
1428
- *
1429
- * // Example
1430
- * float diffuse = max(dot(czm_sunDirectionEC, normalEC), 0.0);
1431
- */
1432
- czm_sunDirectionEC : {
1433
- getSize : function() {
1434
- return 1;
1435
- },
1436
-
1437
- getDatatype : function() {
1438
- return UniformDatatype.FLOAT_VECTOR3;
1439
- },
1440
-
1441
- getValue : function(uniformState) {
1442
- return uniformState.getSunDirectionEC();
1443
- }
1444
- },
1445
-
1446
- /**
1447
- * An automatic GLSL uniform representing the normalized direction to the sun in world coordinates.
1448
- * This is commonly used for directional lighting computations.
1449
- * <br /><br />
1450
- * Like all automatic uniforms, <code>czm_sunDirectionWC</code> does not need to be explicitly declared.
1451
- * However, it can be explicitly declared when a shader is also used by other applications such
1452
- * as a third-party authoring tool.
1453
- *
1454
- * @alias czm_sunDirectionWC
1455
- * @glslUniform
1456
- *
1457
- * @see UniformState#getSunDirectionWC
1458
- * @see czm_sunPositionWC
1459
- * @see czm_sunDirectionEC
1460
- *
1461
- * @example
1462
- * // GLSL declaration
1463
- * uniform vec3 czm_sunDirectionWC;
1464
- */
1465
- czm_sunDirectionWC : {
1466
- getSize : function() {
1467
- return 1;
1468
- },
1469
-
1470
- getDatatype : function() {
1471
- return UniformDatatype.FLOAT_VECTOR3;
1472
- },
1473
-
1474
- getValue : function(uniformState) {
1475
- return uniformState.getSunDirectionWC();
1476
- }
1477
- },
1478
-
1479
- /**
1480
- * An automatic GLSL uniform representing the normalized direction to the moon in eye coordinates.
1481
- * This is commonly used for directional lighting computations.
1482
- * <br /><br />
1483
- * Like all automatic uniforms, <code>czm_moonDirectionEC</code> does not need to be explicitly declared.
1484
- * However, it can be explicitly declared when a shader is also used by other applications such
1485
- * as a third-party authoring tool.
1486
- *
1487
- * @alias czm_moonDirectionEC
1488
- * @glslUniform
1489
- *
1490
- * @see UniformState#getMoonDirectionEC
1491
- * @see czm_sunDirectionEC
1492
- *
1493
- * @example
1494
- * // GLSL declaration
1495
- * uniform vec3 czm_moonDirectionEC;
1496
- *
1497
- * // Example
1498
- * float diffuse = max(dot(czm_moonDirectionEC, normalEC), 0.0);
1499
- */
1500
- czm_moonDirectionEC : {
1501
- getSize : function() {
1502
- return 1;
1503
- },
1504
-
1505
- getDatatype : function() {
1506
- return UniformDatatype.FLOAT_VECTOR3;
1507
- },
1508
-
1509
- getValue : function(uniformState) {
1510
- return uniformState.getMoonDirectionEC();
1511
- }
1512
- },
1513
-
1514
- /**
1515
- * An automatic GLSL uniform representing the high bits of the camera position in model
1516
- * coordinates. This is used for GPU RTE to eliminate jittering artifacts when rendering
1517
- * as described in <a href="http://blogs.agi.com/insight3d/index.php/2008/09/03/precisions-precisions/">Precisions, Precisions</a>.
1518
- * <br /><br />
1519
- * Like all automatic uniforms, <code>czm_encodedCameraPositionMCHigh</code> does not need to be explicitly declared.
1520
- * However, it can be explicitly declared when a shader is also used by other applications such
1521
- * as a third-party authoring tool.
1522
- *
1523
- * @alias czm_encodedCameraPositionMCHigh
1524
- * @glslUniform
1525
- *
1526
- * @see czm_encodedCameraPositionMCLow
1527
- * @see czm_modelViewRelativeToEye
1528
- * @see czm_modelViewProjectionRelativeToEye
1529
- *
1530
- * @example
1531
- * // GLSL declaration
1532
- * uniform vec3 czm_encodedCameraPositionMCHigh;
1533
- */
1534
- czm_encodedCameraPositionMCHigh : {
1535
- getSize : function() {
1536
- return 1;
1537
- },
1538
-
1539
- getDatatype : function() {
1540
- return UniformDatatype.FLOAT_VECTOR3;
1541
- },
1542
-
1543
- getValue : function(uniformState) {
1544
- return uniformState.getEncodedCameraPositionMCHigh();
1545
- }
1546
- },
1547
-
1548
- /**
1549
- * An automatic GLSL uniform representing the low bits of the camera position in model
1550
- * coordinates. This is used for GPU RTE to eliminate jittering artifacts when rendering
1551
- * as described in <a href="http://blogs.agi.com/insight3d/index.php/2008/09/03/precisions-precisions/">Precisions, Precisions</a>.
1552
- * <br /><br />
1553
- * Like all automatic uniforms, <code>czm_encodedCameraPositionMCHigh</code> does not need to be explicitly declared.
1554
- * However, it can be explicitly declared when a shader is also used by other applications such
1555
- * as a third-party authoring tool.
1556
- *
1557
- * @alias czm_encodedCameraPositionMCLow
1558
- * @glslUniform
1559
- *
1560
- * @see czm_encodedCameraPositionMCHigh
1561
- * @see czm_modelViewRelativeToEye
1562
- * @see czm_modelViewProjectionRelativeToEye
1563
- *
1564
- * @example
1565
- * // GLSL declaration
1566
- * uniform vec3 czm_encodedCameraPositionMCLow;
1567
- */
1568
- czm_encodedCameraPositionMCLow : {
1569
- getSize : function() {
1570
- return 1;
1571
- },
1572
-
1573
- getDatatype : function() {
1574
- return UniformDatatype.FLOAT_VECTOR3;
1575
- },
1576
-
1577
- getValue : function(uniformState) {
1578
- return uniformState.getEncodedCameraPositionMCLow();
1579
- }
1580
- },
1581
-
1582
- /**
1583
- * An automatic GLSL uniform representing the position of the viewer (camera) in world coordinates.
1584
- * <br /><br />
1585
- * Like all automatic uniforms, <code>czm_sunDirectionWC</code> does not need to be explicitly declared.
1586
- * However, it can be explicitly declared when a shader is also used by other applications such
1587
- * as a third-party authoring tool.
1588
- *
1589
- * @alias czm_viewerPositionWC
1590
- * @glslUniform
1591
- *
1592
- * @example
1593
- * // GLSL declaration
1594
- * uniform vec3 czm_viewerPositionWC;
1595
- */
1596
- czm_viewerPositionWC : {
1597
- getSize : function() {
1598
- return 1;
1599
- },
1600
-
1601
- getDatatype : function() {
1602
- return UniformDatatype.FLOAT_VECTOR3;
1603
- },
1604
-
1605
- getValue : function(uniformState) {
1606
- return uniformState.getInverseView().getTranslation();
1607
- }
1608
- },
1609
-
1610
- /**
1611
- * An automatic GLSL uniform representing the frame number. This uniform is automatically incremented
1612
- * every frame.
1613
- * <br /><br />
1614
- * Like all automatic uniforms, <code>czm_frameNumber</code> does not need to be explicitly declared.
1615
- * However, it can be explicitly declared when a shader is also used by other applications such
1616
- * as a third-party authoring tool.
1617
- *
1618
- * @alias czm_frameNumber
1619
- * @glslUniform
1620
- *
1621
- * @example
1622
- * // GLSL declaration
1623
- * uniform float czm_frameNumber;
1624
- */
1625
- czm_frameNumber : {
1626
- getSize : function() {
1627
- return 1;
1628
- },
1629
-
1630
- getDatatype : function() {
1631
- return UniformDatatype.FLOAT;
1632
- },
1633
-
1634
- getValue : function(uniformState) {
1635
- return uniformState.getFrameState().frameNumber;
1636
- }
1637
- },
1638
-
1639
- /**
1640
- * An automatic GLSL uniform representing the current morph transition time between
1641
- * 2D/Columbus View and 3D, with 0.0 being 2D or Columbus View and 1.0 being 3D.
1642
- * <br /><br />
1643
- * Like all automatic uniforms, <code>czm_morphTime</code> does not need to be explicitly declared.
1644
- * However, it can be explicitly declared when a shader is also used by other applications such
1645
- * as a third-party authoring tool.
1646
- *
1647
- * @alias czm_morphTime
1648
- * @glslUniform
1649
- *
1650
- * @example
1651
- * // GLSL declaration
1652
- * uniform float czm_morphTime;
1653
- *
1654
- * // Example
1655
- * vec4 p = czm_columbusViewMorph(position2D, position3D, czm_morphTime);
1656
- */
1657
- czm_morphTime : {
1658
- getSize : function() {
1659
- return 1;
1660
- },
1661
-
1662
- getDatatype : function() {
1663
- return UniformDatatype.FLOAT;
1664
- },
1665
-
1666
- getValue : function(uniformState) {
1667
- return uniformState.getFrameState().morphTime;
1668
- }
1669
- },
1670
-
1671
- /**
1672
- * An automatic GLSL uniform representing the current {@link SceneMode} enumeration, expressed
1673
- * as a float.
1674
- * <br /><br />
1675
- * Like all automatic uniforms, <code>czm_sceneMode</code> does not need to be explicitly declared.
1676
- * However, it can be explicitly declared when a shader is also used by other applications such
1677
- * as a third-party authoring tool.
1678
- *
1679
- * @alias czm_sceneMode
1680
- * @glslUniform
1681
- *
1682
- * @see czm_sceneMode2D
1683
- * @see czm_sceneModeColumbusView
1684
- * @see czm_sceneMode3D
1685
- * @see czm_sceneModeMorphing
1686
- *
1687
- * @example
1688
- * // GLSL declaration
1689
- * uniform float czm_sceneMode;
1690
- *
1691
- * // Example
1692
- * if (czm_sceneMode == czm_sceneMode2D)
1693
- * {
1694
- * eyeHeightSq = czm_eyeHeight2D.y;
1695
- * }
1696
- */
1697
- czm_sceneMode : {
1698
- getSize : function() {
1699
- return 1;
1700
- },
1701
-
1702
- getDatatype : function() {
1703
- return UniformDatatype.FLOAT;
1704
- },
1705
-
1706
- getValue : function(uniformState) {
1707
- return uniformState.getFrameState().mode.value;
1708
- }
1709
- },
1710
-
1711
- /**
1712
- * An automatic GLSL uniform representing a 3x3 rotation matrix that transforms
1713
- * from True Equator Mean Equinox (TEME) axes to the pseudo-fixed axes at the current scene time.
1714
- * <br /><br />
1715
- * Like all automatic uniforms, <code>czm_temeToPseudoFixed</code> does not need to be explicitly declared.
1716
- * However, it can be explicitly declared when a shader is also used by other applications such
1717
- * as a third-party authoring tool.
1718
- *
1719
- * @alias czm_temeToPseudoFixed
1720
- * @glslUniform
1721
- *
1722
- * @see UniformState#getTemeToPseudoFixedMatrix
1723
- * @see Transforms.computeTemeToPseudoFixedMatrix
1724
- *
1725
- * @example
1726
- * // GLSL declaration
1727
- * uniform mat3 czm_temeToPseudoFixed;
1728
- *
1729
- * // Example
1730
- * vec3 pseudoFixed = czm_temeToPseudoFixed * teme;
1731
- */
1732
- czm_temeToPseudoFixed : {
1733
- getSize : function() {
1734
- return 1;
1735
- },
1736
-
1737
- getDatatype : function() {
1738
- return UniformDatatype.FLOAT_MATRIX3;
1739
- },
1740
-
1741
- getValue : function(uniformState) {
1742
- return uniformState.getTemeToPseudoFixedMatrix();
1743
- }
1744
- }
1745
- };
1746
-
1747
17
  function getUniformDatatype(gl, activeUniformType) {
1748
18
  switch (activeUniformType) {
1749
19
  case gl.FLOAT:
@@ -1828,6 +98,20 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
1828
98
  scratchUniformMatrix4 = new Float32Array(16);
1829
99
  }
1830
100
 
101
+ function getAutomaticUniformDeclaration(uniforms, uniform) {
102
+ var automaticUniform = uniforms[uniform];
103
+ var declaration = 'uniform ' + automaticUniform.getDatatype().getGLSL() + ' ' + uniform;
104
+
105
+ var size = automaticUniform.getSize();
106
+ if (size === 1) {
107
+ declaration += ';';
108
+ } else {
109
+ declaration += '[' + size.toString() + '];';
110
+ }
111
+
112
+ return declaration;
113
+ }
114
+
1831
115
  /**
1832
116
  * A shader program's uniform, including the uniform's value. This is most commonly used to change
1833
117
  * the value of a uniform, but can also be used retrieve a uniform's name and datatype,
@@ -2043,6 +327,11 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2043
327
  return _location;
2044
328
  };
2045
329
 
330
+ /**
331
+ * @private
332
+ */
333
+ this.textureUnitIndex = undefined;
334
+
2046
335
  this._set = (function() {
2047
336
  switch (activeUniform.type) {
2048
337
  case _gl.FLOAT:
@@ -2073,8 +362,10 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2073
362
  };
2074
363
  case _gl.SAMPLER_2D:
2075
364
  case _gl.SAMPLER_CUBE:
2076
- // See _setSampler()
2077
- return undefined;
365
+ return function() {
366
+ _gl.activeTexture(_gl.TEXTURE0 + this.textureUnitIndex);
367
+ _gl.bindTexture(this.value._getTarget(), this.value._getTexture());
368
+ };
2078
369
  case _gl.INT:
2079
370
  case _gl.BOOL:
2080
371
  return function() {
@@ -2117,17 +408,8 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2117
408
 
2118
409
  if ((activeUniform.type === _gl.SAMPLER_2D) || (activeUniform.type === _gl.SAMPLER_CUBE)) {
2119
410
  this._setSampler = function(textureUnitIndex) {
2120
- _gl.activeTexture(_gl.TEXTURE0 + textureUnitIndex);
2121
- _gl.bindTexture(this.value._getTarget(), this.value._getTexture());
411
+ this.textureUnitIndex = textureUnitIndex;
2122
412
  _gl.uniform1i(_location, textureUnitIndex);
2123
-
2124
- return textureUnitIndex + 1;
2125
- };
2126
-
2127
- this._clearSampler = function(textureUnitIndex) {
2128
- _gl.activeTexture(_gl.TEXTURE0 + textureUnitIndex);
2129
- _gl.bindTexture(this.value._getTarget(), null);
2130
-
2131
413
  return textureUnitIndex + 1;
2132
414
  };
2133
415
  }
@@ -2160,6 +442,11 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2160
442
  return _locations;
2161
443
  };
2162
444
 
445
+ /**
446
+ * @private
447
+ */
448
+ this.textureUnitIndex = undefined;
449
+
2163
450
  this._set = (function() {
2164
451
  switch (activeUniform.type) {
2165
452
  case _gl.FLOAT:
@@ -2198,8 +485,14 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2198
485
  };
2199
486
  case _gl.SAMPLER_2D:
2200
487
  case _gl.SAMPLER_CUBE:
2201
- // See _setSampler()
2202
- return undefined;
488
+ return function() {
489
+ for ( var i = 0; i < _locations.length; ++i) {
490
+ var value = this.value[i];
491
+ var index = this.textureUnitIndex + i;
492
+ _gl.activeTexture(_gl.TEXTURE0 + index);
493
+ _gl.bindTexture(value._getTarget(), value._getTexture());
494
+ }
495
+ };
2203
496
  case _gl.INT:
2204
497
  case _gl.BOOL:
2205
498
  return function() {
@@ -2256,27 +549,31 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2256
549
 
2257
550
  if ((activeUniform.type === _gl.SAMPLER_2D) || (activeUniform.type === _gl.SAMPLER_CUBE)) {
2258
551
  this._setSampler = function(textureUnitIndex) {
552
+ this.textureUnitIndex = textureUnitIndex;
553
+
2259
554
  for ( var i = 0; i < _locations.length; ++i) {
2260
- var value = this.value[i];
2261
555
  var index = textureUnitIndex + i;
2262
- _gl.activeTexture(_gl.TEXTURE0 + index);
2263
- _gl.bindTexture(value._getTarget(), value._getTexture());
2264
556
  _gl.uniform1i(_locations[i], index);
2265
557
  }
2266
558
 
2267
559
  return textureUnitIndex + _locations.length;
2268
560
  };
561
+ }
562
+ };
2269
563
 
2270
- this._clearSampler = function(textureUnitIndex) {
2271
- for ( var i = 0; i < _locations.length; ++i) {
2272
- _gl.activeTexture(_gl.TEXTURE0 + textureUnitIndex + i);
2273
- _gl.bindTexture(this.value[i]._getTarget(), null);
2274
- }
564
+ function setSamplerUniforms(gl, program, samplerUniforms) {
565
+ gl.useProgram(program);
2275
566
 
2276
- return textureUnitIndex + _locations.length;
2277
- };
567
+ var textureUnitIndex = 0;
568
+ var length = samplerUniforms.length;
569
+ for (var i = 0; i < length; ++i) {
570
+ textureUnitIndex = samplerUniforms[i]._setSampler(textureUnitIndex);
2278
571
  }
2279
- };
572
+
573
+ gl.useProgram(null);
574
+
575
+ return textureUnitIndex;
576
+ }
2280
577
 
2281
578
  /**
2282
579
  * DOC_TBA
@@ -2284,25 +581,30 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2284
581
  * @alias ShaderProgram
2285
582
  * @internalConstructor
2286
583
  *
584
+ * @exception {DeveloperError} A circular dependency was found in the Cesium built-in functions/structs/constants.
585
+ *
2287
586
  * @see Context#createShaderProgram
2288
- * @see Context#getShaderCache
2289
587
  */
2290
588
  var ShaderProgram = function(gl, logShaderCompilation, vertexShaderSource, fragmentShaderSource, attributeLocations) {
2291
589
  var program = createAndLinkProgram(gl, logShaderCompilation, vertexShaderSource, fragmentShaderSource, attributeLocations);
2292
590
  var numberOfVertexAttributes = gl.getProgramParameter(program, gl.ACTIVE_ATTRIBUTES);
2293
591
  var uniforms = findUniforms(gl, program);
2294
- var partitionedUniforms = partitionUniforms(uniforms.allUniforms);
592
+ var partitionedUniforms = partitionUniforms(uniforms.uniformsByName);
2295
593
 
2296
594
  this._gl = gl;
2297
595
  this._program = program;
2298
596
  this._numberOfVertexAttributes = numberOfVertexAttributes;
2299
597
  this._vertexAttributes = findVertexAttributes(gl, program, numberOfVertexAttributes);
2300
- this._allUniforms = uniforms.allUniforms;
598
+ this._uniformsByName = uniforms.uniformsByName;
2301
599
  this._uniforms = uniforms.uniforms;
2302
- this._samplerUniforms = uniforms.samplerUniforms;
2303
600
  this._automaticUniforms = partitionedUniforms.automaticUniforms;
2304
601
  this._manualUniforms = partitionedUniforms.manualUniforms;
2305
602
 
603
+ /**
604
+ * @private
605
+ */
606
+ this.maximumTextureUnitIndex = setSamplerUniforms(gl, program, uniforms.samplerUniforms);
607
+
2306
608
  /**
2307
609
  * GLSL source for the shader program's vertex shader. This is the version of
2308
610
  * the source provided when the shader program was created, not the final
@@ -2326,6 +628,24 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2326
628
  this.fragmentShaderSource = fragmentShaderSource;
2327
629
  };
2328
630
 
631
+ /**
632
+ * For ShaderProgram testing
633
+ * @private
634
+ */
635
+ ShaderProgram._czmBuiltinsAndUniforms = {};
636
+
637
+ // combine automatic uniforms and Cesium built-ins
638
+ for ( var builtin in CzmBuiltins) {
639
+ if (CzmBuiltins.hasOwnProperty(builtin)) {
640
+ ShaderProgram._czmBuiltinsAndUniforms[builtin] = CzmBuiltins[builtin];
641
+ }
642
+ }
643
+ for ( var uniform in AutomaticUniforms) {
644
+ if (AutomaticUniforms.hasOwnProperty(uniform)) {
645
+ ShaderProgram._czmBuiltinsAndUniforms[uniform] = getAutomaticUniformDeclaration(AutomaticUniforms, uniform);
646
+ }
647
+ }
648
+
2329
649
  function extractShaderVersion(source) {
2330
650
  // This will fail if the first #version is actually in a comment.
2331
651
  var index = source.indexOf('#version');
@@ -2357,116 +677,159 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2357
677
  };
2358
678
  }
2359
679
 
2360
- var builtInFunctions = {
2361
- czm_RGBToXYZ : czm_RGBToXYZ,
2362
- czm_XYZToRGB : czm_XYZToRGB,
2363
- czm_antialias : czm_antialias,
2364
- czm_cellular : czm_cellular,
2365
- czm_columbusViewMorph : czm_columbusViewMorph,
2366
- czm_computePosition : czm_computePosition,
2367
- czm_eastNorthUpToEyeCoordinates : czm_eastNorthUpToEyeCoordinates,
2368
- czm_ellipsoidContainsPoint : czm_ellipsoidContainsPoint,
2369
- czm_ellipsoidNew : czm_ellipsoidNew,
2370
- czm_ellipsoidWgs84TextureCoordinates : czm_ellipsoidWgs84TextureCoordinates,
2371
- czm_equalsEpsilon : czm_equalsEpsilon,
2372
- czm_eyeOffset : czm_eyeOffset,
2373
- czm_eyeToWindowCoordinates : czm_eyeToWindowCoordinates,
2374
- czm_geodeticSurfaceNormal : czm_geodeticSurfaceNormal,
2375
- czm_getDefaultMaterial : czm_getDefaultMaterial,
2376
- czm_getWaterNoise : czm_getWaterNoise,
2377
- czm_getWgs84EllipsoidEC : czm_getWgs84EllipsoidEC,
2378
- czm_hue : czm_hue,
2379
- czm_isEmpty : czm_isEmpty,
2380
- czm_isFull : czm_isFull,
2381
- czm_latitudeToWebMercatorFraction : czm_latitudeToWebMercatorFraction,
2382
- czm_luminance : czm_luminance,
2383
- czm_modelToWindowCoordinates : czm_modelToWindowCoordinates,
2384
- czm_multiplyWithColorBalance : czm_multiplyWithColorBalance,
2385
- czm_phong : czm_phong,
2386
- czm_pointAlongRay : czm_pointAlongRay,
2387
- czm_rayEllipsoidIntersectionInterval : czm_rayEllipsoidIntersectionInterval,
2388
- czm_saturation : czm_saturation,
2389
- czm_snoise : czm_snoise,
2390
- czm_tangentToEyeSpaceMatrix : czm_tangentToEyeSpaceMatrix,
2391
- czm_translateRelativeToEye : czm_translateRelativeToEye,
2392
- czm_transpose : czm_transpose,
2393
- czm_windowToEyeCoordinates : czm_windowToEyeCoordinates
2394
- };
680
+ function getDependencyNode(name, glslSource, nodes) {
681
+ var dependencyNode;
682
+
683
+ // check if already loaded
684
+ for ( var i = 0; i < nodes.length; ++i) {
685
+ if (nodes[i].name === name) {
686
+ dependencyNode = nodes[i];
687
+ }
688
+ }
689
+
690
+ if (!defined(dependencyNode)) {
691
+ // strip doc comments so we don't accidentally try to determine a dependency for something found
692
+ // in a comment
693
+ var commentBlocks = glslSource.match(/\/\*\*[\s\S]*?\*\//gm);
694
+ if (defined(commentBlocks) && commentBlocks !== null) {
695
+ for (i = 0; i < commentBlocks.length; ++i) {
696
+ var commentBlock = commentBlocks[i];
697
+
698
+ // preserve the number of lines in the comment block so the line numbers will be correct when debugging shaders
699
+ var numberOfLines = commentBlock.match(/\n/gm).length;
700
+ var modifiedComment = '';
701
+ for ( var lineNumber = 0; lineNumber < numberOfLines; ++lineNumber) {
702
+ if (lineNumber === 0) {
703
+ modifiedComment += '// Comment replaced to prevent problems when determining dependencies on built-in functions\n';
704
+ } else {
705
+ modifiedComment += '//\n';
706
+ }
707
+ }
2395
708
 
2396
- function getBuiltinFunctions(source) {
2397
- // This expects well-behaved shaders, e.g., the built-in functions are not commented out or redeclared.
2398
- var definitions = '';
2399
- var functions = builtInFunctions;
2400
- for (var f in functions) {
2401
- if (functions.hasOwnProperty(f)) {
2402
- if (source.indexOf(f) !== -1) {
2403
- definitions += functions[f] + ' \n';
709
+ glslSource = glslSource.replace(commentBlock, modifiedComment);
2404
710
  }
2405
711
  }
712
+
713
+ // create new node
714
+ dependencyNode = {
715
+ name : name,
716
+ glslSource : glslSource,
717
+ dependsOn : [],
718
+ requiredBy : [],
719
+ evaluated : false
720
+ };
721
+ nodes.push(dependencyNode);
2406
722
  }
2407
723
 
2408
- return definitions;
724
+ return dependencyNode;
2409
725
  }
2410
726
 
2411
- function getFragmentShaderPrecision() {
2412
- return '#ifdef GL_FRAGMENT_PRECISION_HIGH \n' +
2413
- ' precision highp float; \n' +
2414
- '#else \n' +
2415
- ' precision mediump float; \n' +
2416
- '#endif \n\n';
727
+ function generateDependencies(currentNode, dependencyNodes) {
728
+ if (currentNode.evaluated) {
729
+ return;
730
+ }
731
+
732
+ currentNode.evaluated = true;
733
+
734
+ // identify all dependencies that are referenced from this glsl source code
735
+ var czmMatches = currentNode.glslSource.match(/\bczm_[a-zA-Z0-9_]*/g);
736
+ if (defined(czmMatches) && czmMatches !== null) {
737
+ // remove duplicates
738
+ czmMatches = czmMatches.filter(function(elem, pos) {
739
+ return czmMatches.indexOf(elem) === pos;
740
+ });
741
+
742
+ czmMatches.forEach(function(element, index, array) {
743
+ if (element !== currentNode.name && ShaderProgram._czmBuiltinsAndUniforms.hasOwnProperty(element)) {
744
+ var referencedNode = getDependencyNode(element, ShaderProgram._czmBuiltinsAndUniforms[element], dependencyNodes);
745
+ currentNode.dependsOn.push(referencedNode);
746
+ referencedNode.requiredBy.push(currentNode);
747
+
748
+ // recursive call to find any dependencies of the new node
749
+ generateDependencies(referencedNode, dependencyNodes);
750
+ }
751
+ });
752
+ }
2417
753
  }
2418
754
 
2419
- function getAutomaticUniformDeclaration(uniforms, uniform) {
2420
- var automaticUniform = uniforms[uniform];
2421
- var declaration = 'uniform ' + automaticUniform.getDatatype().getGLSL() + ' ' + uniform;
755
+ function sortDependencies(dependencyNodes) {
756
+ var nodesWithoutIncomingEdges = [];
757
+ var allNodes = [];
2422
758
 
2423
- var size = automaticUniform.getSize();
2424
- if (size === 1) {
2425
- declaration += ';';
2426
- } else {
2427
- declaration += '[' + size.toString() + '];';
759
+ while (dependencyNodes.length > 0) {
760
+ var node = dependencyNodes.pop();
761
+ allNodes.push(node);
762
+
763
+ if (node.requiredBy.length === 0) {
764
+ nodesWithoutIncomingEdges.push(node);
765
+ }
2428
766
  }
2429
767
 
2430
- return declaration;
2431
- }
768
+ while (nodesWithoutIncomingEdges.length > 0) {
769
+ var currentNode = nodesWithoutIncomingEdges.shift();
2432
770
 
2433
- function getAutomaticUniforms(source) {
2434
- // This expects well-behaved shaders, e.g., the automatic uniform is not commented out or redeclared.
2435
- var declarations = '';
2436
- var uniforms = allAutomaticUniforms;
2437
- for (var uniform in uniforms) {
2438
- if (uniforms.hasOwnProperty(uniform)) {
2439
- if (source.indexOf(uniform) !== -1) {
2440
- declarations += getAutomaticUniformDeclaration(uniforms, uniform) + ' \n';
771
+ dependencyNodes.push(currentNode);
772
+
773
+ for ( var i = 0; i < currentNode.dependsOn.length; ++i) {
774
+ // remove the edge from the graph
775
+ var referencedNode = currentNode.dependsOn[i];
776
+ var index = referencedNode.requiredBy.indexOf(currentNode);
777
+ referencedNode.requiredBy.splice(index, 1);
778
+
779
+ // if referenced node has no more incoming edges, add to list
780
+ if (referencedNode.requiredBy.length === 0) {
781
+ nodesWithoutIncomingEdges.push(referencedNode);
2441
782
  }
2442
783
  }
2443
784
  }
2444
785
 
2445
- return declarations;
786
+ // if there are any nodes left with incoming edges, then there was a circular dependency somewhere in the graph
787
+ var badNodes = [];
788
+ for ( var j = 0; j < allNodes.length; ++j) {
789
+ if (allNodes[j].requiredBy.length !== 0) {
790
+ badNodes.push(allNodes[j]);
791
+ }
792
+ }
793
+ if (badNodes.length !== 0) {
794
+ var message = 'A circular dependency was found in the following built-in functions/structs/constants: \n';
795
+ for (j = 0; j < badNodes.length; ++j) {
796
+ message = message + badNodes[j].name + '\n';
797
+ }
798
+ throw new DeveloperError(message);
799
+ }
800
+ }
801
+
802
+ function getBuiltinsAndAutomaticUniforms(shaderSource) {
803
+ // generate a dependency graph for builtin functions
804
+ var dependencyNodes = [];
805
+ var root = getDependencyNode('main', shaderSource, dependencyNodes);
806
+ generateDependencies(root, dependencyNodes, ShaderProgram._czmBuiltinsAndUniforms);
807
+ sortDependencies(dependencyNodes);
808
+
809
+ // Concatenate the source code for the function dependencies.
810
+ // Iterate in reverse so that dependent items are declared before they are used.
811
+ var builtinsSource = '';
812
+ for ( var i = dependencyNodes.length - 1; i >= 0; --i) {
813
+ builtinsSource = builtinsSource + dependencyNodes[i].glslSource + '\n';
814
+ }
815
+
816
+ return builtinsSource.replace(root.glslSource, '');
817
+ }
818
+
819
+ function getFragmentShaderPrecision() {
820
+ return '#ifdef GL_FRAGMENT_PRECISION_HIGH \n' +
821
+ ' precision highp float; \n' +
822
+ '#else \n' +
823
+ ' precision mediump float; \n' +
824
+ '#endif \n\n';
2446
825
  }
2447
826
 
2448
827
  function createAndLinkProgram(gl, logShaderCompilation, vertexShaderSource, fragmentShaderSource, attributeLocations) {
2449
828
  var vsSourceVersioned = extractShaderVersion(vertexShaderSource);
2450
829
  var fsSourceVersioned = extractShaderVersion(fragmentShaderSource);
2451
830
 
2452
- var vsAndBuiltinFunctions = getBuiltinFunctions(vsSourceVersioned.source) +
2453
- '\n#line 0\n' +
2454
- vsSourceVersioned.source;
2455
- var vsSource = vsSourceVersioned.version +
2456
- ShadersBuiltinConstants +
2457
- ShadersBuiltinStructs +
2458
- getAutomaticUniforms(vsAndBuiltinFunctions) +
2459
- vsAndBuiltinFunctions;
2460
-
2461
- var fsAndBuiltinFunctions = getBuiltinFunctions(fsSourceVersioned.source) +
2462
- '\n#line 0\n' +
2463
- fsSourceVersioned.source;
2464
- var fsSource = fsSourceVersioned.version +
2465
- getFragmentShaderPrecision() +
2466
- ShadersBuiltinConstants +
2467
- ShadersBuiltinStructs +
2468
- getAutomaticUniforms(fsAndBuiltinFunctions) +
2469
- fsAndBuiltinFunctions;
831
+ var vsSource = vsSourceVersioned.version + getBuiltinsAndAutomaticUniforms(vsSourceVersioned.source) + '\n#line 0\n' + vsSourceVersioned.source;
832
+ var fsSource = fsSourceVersioned.version + getFragmentShaderPrecision() + getBuiltinsAndAutomaticUniforms(fsSourceVersioned.source) + '\n#line 0\n' + fsSourceVersioned.source;
2470
833
 
2471
834
  var vertexShader = gl.createShader(gl.VERTEX_SHADER);
2472
835
  gl.shaderSource(vertexShader, vsSource);
@@ -2547,7 +910,7 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2547
910
  }
2548
911
 
2549
912
  function findUniforms(gl, program) {
2550
- var allUniforms = {};
913
+ var uniformsByName = {};
2551
914
  var uniforms = [];
2552
915
  var samplerUniforms = [];
2553
916
 
@@ -2556,8 +919,7 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2556
919
  for ( var i = 0; i < numberOfUniforms; ++i) {
2557
920
  var activeUniform = gl.getActiveUniform(program, i);
2558
921
  var suffix = '[0]';
2559
- var uniformName = activeUniform.name.indexOf(suffix, activeUniform.name.length - suffix.length) !== -1 ?
2560
- activeUniform.name.slice(0, activeUniform.name.length - 3) : activeUniform.name;
922
+ var uniformName = activeUniform.name.indexOf(suffix, activeUniform.name.length - suffix.length) !== -1 ? activeUniform.name.slice(0, activeUniform.name.length - 3) : activeUniform.name;
2561
923
 
2562
924
  // Ignore GLSL built-in uniforms returned in Firefox.
2563
925
  if (uniformName.indexOf('gl_') !== 0) {
@@ -2567,12 +929,11 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2567
929
  var uniformValue = gl.getUniform(program, location);
2568
930
  var uniform = new Uniform(gl, activeUniform, uniformName, location, uniformValue);
2569
931
 
2570
- allUniforms[uniformName] = uniform;
932
+ uniformsByName[uniformName] = uniform;
933
+ uniforms.push(uniform);
2571
934
 
2572
935
  if (uniform._setSampler) {
2573
936
  samplerUniforms.push(uniform);
2574
- } else {
2575
- uniforms.push(uniform);
2576
937
  }
2577
938
  } else {
2578
939
  // Uniform array
@@ -2587,7 +948,7 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2587
948
  var indexOfBracket = uniformName.indexOf('[');
2588
949
  if (indexOfBracket >= 0) {
2589
950
  // We're assuming the array elements show up in numerical order - it seems to be true.
2590
- uniformArray = allUniforms[uniformName.slice(0, indexOfBracket)];
951
+ uniformArray = uniformsByName[uniformName.slice(0, indexOfBracket)];
2591
952
 
2592
953
  // Nexus 4 with Android 4.3 needs this check, because it reports a uniform
2593
954
  // with the strange name webgl_3467e0265d05c3c1[1] in our central body surface shader.
@@ -2616,12 +977,11 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2616
977
  }
2617
978
  uniformArray = new UniformArray(gl, activeUniform, uniformName, locations, value);
2618
979
 
2619
- allUniforms[uniformName] = uniformArray;
980
+ uniformsByName[uniformName] = uniformArray;
981
+ uniforms.push(uniformArray);
2620
982
 
2621
983
  if (uniformArray._setSampler) {
2622
984
  samplerUniforms.push(uniformArray);
2623
- } else {
2624
- uniforms.push(uniformArray);
2625
985
  }
2626
986
  }
2627
987
  }
@@ -2629,7 +989,7 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2629
989
  }
2630
990
 
2631
991
  return {
2632
- allUniforms : allUniforms,
992
+ uniformsByName : uniformsByName,
2633
993
  uniforms : uniforms,
2634
994
  samplerUniforms : samplerUniforms
2635
995
  };
@@ -2639,9 +999,9 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2639
999
  var automaticUniforms = [];
2640
1000
  var manualUniforms = {};
2641
1001
 
2642
- for (var uniform in uniforms) {
1002
+ for ( var uniform in uniforms) {
2643
1003
  if (uniforms.hasOwnProperty(uniform)) {
2644
- var automaticUniform = allAutomaticUniforms[uniform];
1004
+ var automaticUniform = AutomaticUniforms[uniform];
2645
1005
  if (automaticUniform) {
2646
1006
  automaticUniforms.push({
2647
1007
  uniform : uniforms[uniform],
@@ -2692,7 +1052,7 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2692
1052
  * @see ShaderProgram#getManualUniforms
2693
1053
  */
2694
1054
  ShaderProgram.prototype.getAllUniforms = function() {
2695
- return this._allUniforms;
1055
+ return this._uniformsByName;
2696
1056
  };
2697
1057
 
2698
1058
  /**
@@ -2711,17 +1071,6 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2711
1071
  this._gl.useProgram(this._program);
2712
1072
  };
2713
1073
 
2714
- ShaderProgram.prototype._unBind = function() {
2715
- this._gl.useProgram(null);
2716
-
2717
- var samplerUniforms = this._samplerUniforms;
2718
- var textureUnitIndex = 0;
2719
- var len = samplerUniforms.length;
2720
- for ( var i = 0; i < len; ++i) {
2721
- textureUnitIndex = samplerUniforms[i]._clearSampler(textureUnitIndex);
2722
- }
2723
- };
2724
-
2725
1074
  ShaderProgram.prototype._setUniforms = function(uniformMap, uniformState, validate) {
2726
1075
  // TODO: Performance
2727
1076
 
@@ -2729,12 +1078,11 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2729
1078
  var i;
2730
1079
 
2731
1080
  var uniforms = this._uniforms;
2732
- var samplerUniforms = this._samplerUniforms;
2733
1081
  var manualUniforms = this._manualUniforms;
2734
1082
  var automaticUniforms = this._automaticUniforms;
2735
1083
 
2736
1084
  if (uniformMap) {
2737
- for (var uniform in manualUniforms) {
1085
+ for ( var uniform in manualUniforms) {
2738
1086
  if (manualUniforms.hasOwnProperty(uniform)) {
2739
1087
  manualUniforms[uniform].value = uniformMap[uniform]();
2740
1088
  }
@@ -2753,12 +1101,6 @@ define(['Core/defined', 'Core/DeveloperError', 'Core/FeatureDetection', 'Core/Ru
2753
1101
  uniforms[i]._set();
2754
1102
  }
2755
1103
 
2756
- var textureUnitIndex = 0;
2757
- len = samplerUniforms.length;
2758
- for (i = 0; i < len; ++i) {
2759
- textureUnitIndex = samplerUniforms[i]._setSampler(textureUnitIndex);
2760
- }
2761
-
2762
1104
  if (validate) {
2763
1105
  var gl = this._gl;
2764
1106
  var program = this._program;