# DO NOT EDIT
# generated with the following command:
#
#   tools/js/bower2bazel.py -w lib/js/bower_archives.bzl -b lib/js/bower_components.bzl
#

load("//tools/bzl:js.bzl", "bower_archive")

def load_bower_archives():
    bower_archive(
        name = "accessibility-developer-tools",
        package = "accessibility-developer-tools",
        version = "2.12.0",
        sha1 = "88ae82dcdeb6c658f76eff509d0ee425cae14d49",
    )
    bower_archive(
        name = "async",
        package = "async",
        version = "1.5.2",
        sha1 = "1ec975d3b3834646a7e3d4b7e68118b90ed72508",
    )
    bower_archive(
        name = "chai",
        package = "chai",
        version = "3.5.0",
        sha1 = "849ad3ee7c77506548b7b5db603a4e150b9431aa",
    )
    bower_archive(
        name = "font-roboto-local",
        package = "PolymerElements/font-roboto-local",
        version = "1.1.0",
        sha1 = "de651abf9b1b2d0935f7b264d48131677196412f",
    )
    bower_archive(
        name = "iron-a11y-announcer",
        package = "PolymerElements/iron-a11y-announcer",
        version = "1.0.6",
        sha1 = "14aed1e1b300ea344e80362e875919ea3d104dcc",
    )
    bower_archive(
        name = "iron-a11y-keys-behavior",
        package = "PolymerElements/iron-a11y-keys-behavior",
        version = "1.1.9",
        sha1 = "f58358ee652c67e6e721364ba50fb77a2ece1465",
    )
    bower_archive(
        name = "iron-behaviors",
        package = "PolymerElements/iron-behaviors",
        version = "1.0.18",
        sha1 = "e231a1a02b090f5183db917639fdb96cdd0dca18",
    )
    bower_archive(
        name = "iron-checked-element-behavior",
        package = "PolymerElements/iron-checked-element-behavior",
        version = "1.0.6",
        sha1 = "93ad3554cec119d8c5732d1c722ad113e1866370",
    )
    bower_archive(
        name = "iron-fit-behavior",
        package = "PolymerElements/iron-fit-behavior",
        version = "1.2.7",
        sha1 = "01c485fbf898307029bbb72ac7e132db1570a842",
    )
    bower_archive(
        name = "iron-flex-layout",
        package = "PolymerElements/iron-flex-layout",
        version = "1.3.9",
        sha1 = "d987b924cf29fcfe4b393833e81fdc9f1e268796",
    )
    bower_archive(
        name = "iron-form-element-behavior",
        package = "PolymerElements/iron-form-element-behavior",
        version = "1.0.7",
        sha1 = "7b5a79e02cc32f0918725dd26925d0df1e03ed12",
    )
    bower_archive(
        name = "iron-menu-behavior",
        package = "PolymerElements/iron-menu-behavior",
        version = "2.1.1",
        sha1 = "1504997f6eb9aec490b855dadee473cac064f38c",
    )
    bower_archive(
        name = "iron-meta",
        package = "PolymerElements/iron-meta",
        version = "1.1.3",
        sha1 = "f77eba3f6f6817f10bda33918bde8f963d450041",
    )
    bower_archive(
        name = "iron-resizable-behavior",
        package = "polymerelements/iron-resizable-behavior",
        version = "1.0.6",
        sha1 = "719c2a8a1a784f8aefcdeef41fcc2e5a03518d9e",
    )
    bower_archive(
        name = "iron-validatable-behavior",
        package = "PolymerElements/iron-validatable-behavior",
        version = "1.1.2",
        sha1 = "7111f34ff32e1510131dfbdb1eaa51bfa291e8be",
    )
    bower_archive(
        name = "lodash",
        package = "lodash",
        version = "3.10.1",
        sha1 = "2f207a8293c4c554bf6cf071241f7a00dc513d3a",
    )
    bower_archive(
        name = "mocha",
        package = "mocha",
        version = "3.5.3",
        sha1 = "c14f149821e4e96241b20f85134aa757b73038f1",
    )
    bower_archive(
        name = "neon-animation",
        package = "polymerelements/neon-animation",
        version = "1.2.5",
        sha1 = "588d289f779d02b21ce5b676e257bbd6155649e8",
    )
    bower_archive(
        name = "paper-behaviors",
        package = "PolymerElements/paper-behaviors",
        version = "1.0.13",
        sha1 = "a81eab28a952e124c208430e17508d9a1aae4ee7",
    )
    bower_archive(
        name = "paper-icon-button",
        package = "PolymerElements/paper-icon-button",
        version = "2.2.0",
        sha1 = "9525e76ef433428bb9d6ec4fa65c4ef83156a803",
    )
    bower_archive(
        name = "paper-ripple",
        package = "PolymerElements/paper-ripple",
        version = "1.0.10",
        sha1 = "21199db50d02b842da54bd6f4f1d1b10b474e893",
    )
    bower_archive(
        name = "paper-styles",
        package = "PolymerElements/paper-styles",
        # Basically 1.3.1 but with
        # https://github.com/PolymerElements/paper-styles/pull/164 applied
        version = "dd0b13e186b9690d5e74a93f6e51e0835ea60495",
        sha1 = "f859a8dee403fbb724e8d0cf009db79c6dd61b47",
    )
    bower_archive(
        name = "sinon-chai",
        package = "sinon-chai",
        version = "2.14.0",
        sha1 = "78f0dc184efe47012a2b1b9a16a4289acf8300dc",
    )
    bower_archive(
        name = "sinonjs",
        package = "Polymer/sinon.js",
        version = "1.17.1",
        sha1 = "a26a6aab7358807de52ba738770f6ac709afd240",
    )
    bower_archive(
        name = "stacky",
        package = "stacky",
        version = "1.3.2",
        sha1 = "d6c07a0112ab2e9677fe085933744466a89232fb",
    )
    bower_archive(
        name = "web-animations-js",
        package = "web-animations/web-animations-js",
        version = "2.3.1",
        sha1 = "2ba5548d36188fe54555eaad0a576de4b027661e",
    )
    bower_archive(
        name = "webcomponentsjs",
        package = "webcomponents/webcomponentsjs",
        version = "0.7.24",
        sha1 = "559227f8ee9db9bfbd81989f24510cc0c1bfc65c",
    )
