diff --git a/Yavsc/Auth/AuthServer/OAuthAuthorizationServerMiddleware.cs b/Yavsc/Auth/AuthServer/OAuthAuthorizationServerMiddleware.cs index 6824c3ed..571f4cd2 100644 --- a/Yavsc/Auth/AuthServer/OAuthAuthorizationServerMiddleware.cs +++ b/Yavsc/Auth/AuthServer/OAuthAuthorizationServerMiddleware.cs @@ -3,8 +3,6 @@ using Microsoft.AspNet.Builder; using Microsoft.AspNet.DataProtection; using Microsoft.Extensions.Logging; using Microsoft.Extensions.WebEncoders; -using System; -using System.IO; using Yavsc.Auth; namespace OAuth.AspNet.AuthServer diff --git a/Yavsc/Auth/AuthServer/OAuthAuthorizeEndpointContext.cs b/Yavsc/Auth/AuthServer/OAuthAuthorizeEndpointContext.cs index e530c747..92765bc2 100644 --- a/Yavsc/Auth/AuthServer/OAuthAuthorizeEndpointContext.cs +++ b/Yavsc/Auth/AuthServer/OAuthAuthorizeEndpointContext.cs @@ -1,4 +1,3 @@ -using Microsoft.AspNet.Authentication; using Microsoft.AspNet.Http; namespace OAuth.AspNet.AuthServer diff --git a/Yavsc/Auth/AuthServer/TokenEndpointRequest.cs b/Yavsc/Auth/AuthServer/TokenEndpointRequest.cs index e60969c0..81ab32bc 100644 --- a/Yavsc/Auth/AuthServer/TokenEndpointRequest.cs +++ b/Yavsc/Auth/AuthServer/TokenEndpointRequest.cs @@ -62,6 +62,10 @@ namespace OAuth.AspNet.AuthServer Parameters = parameters, }; } + else + { + throw new ArgumentException("No grant type found in the request"); + } } /// diff --git a/Yavsc/Auth/GoogleOptions.cs b/Yavsc/Auth/GoogleOptions.cs index 3f151d23..32779d0a 100644 --- a/Yavsc/Auth/GoogleOptions.cs +++ b/Yavsc/Auth/GoogleOptions.cs @@ -33,6 +33,7 @@ namespace Yavsc.Auth Scope.Add("openid"); Scope.Add("profile"); Scope.Add("email"); + } /// @@ -40,5 +41,6 @@ namespace Yavsc.Auth /// public string AccessType { get; set; } + } } diff --git a/Yavsc/Constants.cs b/Yavsc/Constants.cs index 9d01a195..0deacb48 100644 --- a/Yavsc/Constants.cs +++ b/Yavsc/Constants.cs @@ -4,17 +4,14 @@ namespace Yavsc public static class Constants { - public const string AccessDeniedPath = "~/signin"; - public const string AuthorizePath = "~/authorize"; - public const string TokenPath = "~/token"; + public const string AccessDeniedPath = "~/signin", AuthorizePath = "~/authorize", + TokenPath = "~/token", LocalLoginPath = "~/signin", LoginPath = "~/signin", + ExternalLoginPath = "~/extsign", LogoutPath = "~/signout", MePath = "~/api/Me"; - public const string LocalLoginPath = "~/login"; - public const string LoginPath = "~/signin"; - public const string ExternalLoginPath = "~/extsign"; - public const string LogoutPath = "~/signout"; - public const string MePath = "~/api/Me"; - - public const string ApplicationAuthenticationSheme = "ServerCookie"; + public const string + ApplicationAuthenticationSheme = "ServerCookie", + ExternalAuthenticationSheme= "ExternalCookie"; + public static readonly Scope[] SiteScopes = {  new Scope { Id = "profile", Description = "Your profile informations" },   new Scope { Id = "book" , Description ="Your booking interface"},   @@ -26,32 +23,26 @@ namespace Yavsc new Scope { Id = "frontoffice" , Description ="Your front office interface" } }; - public const string CompanyInfoUrl = " https://societeinfo.com/app/rest/api/v1/company/json?registration_number={0}&key={1}"; - public const string DefaultFactor = "Default"; - public const string MobileAppFactor = "Google.clood"; - public const string EMailFactor = "Email"; - public const string SMSFactor = "Phone"; - public const string AdminGroupName = "Administrator"; - public const string BlogModeratorGroupName = "Moderator"; - public const string FrontOfficeGroupName = "FrontOffice"; - public const string UserBillsFilesDir= "Bills"; - public const string UserFilesDir = "UserFiles"; - - public const string GCMNotificationUrl = "https://gcm-http.googleapis.com/gcm/send"; + public const string + CompanyInfoUrl = " https://societeinfo.com/app/rest/api/v1/company/json?registration_number={0}&key={1}", + DefaultFactor = "Default", + MobileAppFactor = "Google.clood", + EMailFactor = "Email", + SMSFactor = "Phone", + AdminGroupName = "Administrator", + BlogModeratorGroupName = "Moderator", + FrontOfficeGroupName = "FrontOffice", + UserBillsFilesDir= "Bills", + UserFilesDir = "UserFiles", + GCMNotificationUrl = "https://gcm-http.googleapis.com/gcm/send", + KeyProtectorPurpose = "OAuth.AspNet.AuthServer"; private static readonly string[] GoogleScopes = { "openid", "profile", "email" }; public static readonly string[] GoogleCalendarScopes = { "openid", "profile", "email", "https://www.googleapis.com/auth/calendar" }; - public const string ApplicationName = "Yavsc"; - - public const string Issuer = "https://dev.pschneider.fr"; - - public const string CompanyClaimType = "https://schemas.pschneider.fr/identity/claims/Company"; - - public const string UserNameRegExp = @"^[a-zA-Z][a-zA-Z0-9 ]*$"; - - - public const string KeyProtectorPurpose = "OAuth.AspNet.AuthServer"; - + public const string ApplicationName = "Yavsc", + Issuer = "https://dev.pschneider.fr", + CompanyClaimType = "https://schemas.pschneider.fr/identity/claims/Company", + UserNameRegExp = @"^[a-zA-Z][a-zA-Z0-9 ]*$"; } } diff --git a/Yavsc/Controllers/AccountController.cs b/Yavsc/Controllers/AccountController.cs index bcd0b34c..d6a07952 100644 --- a/Yavsc/Controllers/AccountController.cs +++ b/Yavsc/Controllers/AccountController.cs @@ -11,11 +11,10 @@ using Microsoft.AspNet.Mvc.Rendering; using Microsoft.Extensions.Logging; using Microsoft.Extensions.OptionsModel; using Microsoft.AspNet.Http; -using Yavsc.Extensions; using Yavsc.Models; using Yavsc.Services; using Yavsc.ViewModels.Account; -using Microsoft.AspNet.Http.Authentication; +using Yavsc.Helpers; namespace Yavsc.Controllers { @@ -50,6 +49,7 @@ namespace Yavsc.Controllers _smtpSettings = smtpSettings.Value; _twilioSettings = twilioSettings.Value; _logger = loggerFactory.CreateLogger(); + } [HttpGet(Constants.LoginPath)] @@ -127,6 +127,7 @@ namespace Yavsc.Controllers // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, set lockoutOnFailure: true var result = await _signInManager.PasswordSignInAsync(model.UserName, model.Password, model.RememberMe, lockoutOnFailure: false); + if (result.Succeeded) { return Redirect(model.ReturnUrl); diff --git a/Yavsc/Controllers/ApplicationController.cs b/Yavsc/Controllers/ApplicationController.cs deleted file mode 100644 index abf62500..00000000 --- a/Yavsc/Controllers/ApplicationController.cs +++ /dev/null @@ -1,122 +0,0 @@ -using System; -using System.Linq; -using Microsoft.AspNet.Authorization; -using Microsoft.AspNet.Mvc; -using Yavsc.Models; - -namespace Yavsc.Controllers -{ - [Authorize("AdministratorOnly")] - public class ApplicationController : Controller - { - private ApplicationDbContext _context; - - public ApplicationController(ApplicationDbContext context) - { - _context = context; - } - - // GET: Application - public IActionResult Index() - { - return View(_context.Applications.ToList()); - } - - // GET: Application/Details/5 - public IActionResult Details(string id) - { - if (id == null) - { - return HttpNotFound(); - } - - Application application = _context.Applications.Single(m => m.ApplicationID == id); - if (application == null) - { - return HttpNotFound(); - } - - return View(application); - } - - // GET: Application/Create - public IActionResult Create() - { - return View(); - } - - // POST: Application/Create - [HttpPost] - [ValidateAntiForgeryToken] - public IActionResult Create(Application application) - { - if (ModelState.IsValid) - { - application.ApplicationID = Guid.NewGuid().ToString(); - _context.Applications.Add(application); - _context.SaveChanges(); - return RedirectToAction("Index"); - } - return View(application); - } - - // GET: Application/Edit/5 - public IActionResult Edit(string id) - { - if (id == null) - { - return HttpNotFound(); - } - - Application application = _context.Applications.Single(m => m.ApplicationID == id); - if (application == null) - { - return HttpNotFound(); - } - return View(application); - } - - // POST: Application/Edit/5 - [HttpPost] - [ValidateAntiForgeryToken] - public IActionResult Edit(Application application) - { - if (ModelState.IsValid) - { - _context.Update(application); - _context.SaveChanges(); - return RedirectToAction("Index"); - } - return View(application); - } - - // GET: Application/Delete/5 - [ActionName("Delete")] - public IActionResult Delete(string id) - { - if (id == null) - { - return HttpNotFound(); - } - - Application application = _context.Applications.Single(m => m.ApplicationID == id); - if (application == null) - { - return HttpNotFound(); - } - - return View(application); - } - - // POST: Application/Delete/5 - [HttpPost, ActionName("Delete")] - [ValidateAntiForgeryToken] - public IActionResult DeleteConfirmed(string id) - { - Application application = _context.Applications.Single(m => m.ApplicationID == id); - _context.Applications.Remove(application); - _context.SaveChanges(); - return RedirectToAction("Index"); - } - } -} diff --git a/Yavsc/Controllers/ClientController.cs b/Yavsc/Controllers/ClientController.cs new file mode 100644 index 00000000..eaf5edfb --- /dev/null +++ b/Yavsc/Controllers/ClientController.cs @@ -0,0 +1,137 @@ +using System; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNet.Mvc; +using Microsoft.AspNet.Mvc.Rendering; +using Microsoft.Data.Entity; +using Yavsc.Models; +using Yavsc.Models.Auth; + +namespace Yavsc.Controllers +{ + public class ClientController : Controller + { + private ApplicationDbContext _context; + + public ClientController(ApplicationDbContext context) + { + _context = context; + } + + // GET: Client + public async Task Index() + { + return View(await _context.Applications.ToListAsync()); + } + + // GET: Client/Details/5 + public async Task Details(string id) + { + if (id == null) + { + return HttpNotFound(); + } + + Client client = await _context.Applications.SingleAsync(m => m.Id == id); + if (client == null) + { + return HttpNotFound(); + } + return View(client); + } + + // GET: Client/Create + public IActionResult Create() + { + return View(); + } + + // POST: Client/Create + [HttpPost] + [ValidateAntiForgeryToken] + public async Task Create(Client client) + { + if (ModelState.IsValid) + { + client.Id = Guid.NewGuid().ToString(); + _context.Applications.Add(client); + await _context.SaveChangesAsync(); + return RedirectToAction("Index"); + } + SetAppTypesInputValues(); + return View(client); + } + private void SetAppTypesInputValues() + { + ViewData["Type"] = + new SelectListItem[] {  + new SelectListItem { + Text = ApplicationTypes.JavaScript.ToString(), + Value = ((int) ApplicationTypes.JavaScript).ToString() }, + new SelectListItem { + Text = ApplicationTypes.NativeConfidential.ToString(), + Value = ((int) ApplicationTypes.NativeConfidential).ToString() + } + }; + } + // GET: Client/Edit/5 + public async Task Edit(string id) + { + if (id == null) + { + return HttpNotFound(); + } + + Client client = await _context.Applications.SingleAsync(m => m.Id == id); + if (client == null) + { + return HttpNotFound(); + } + SetAppTypesInputValues(); + return View(client); + } + + // POST: Client/Edit/5 + [HttpPost] + [ValidateAntiForgeryToken] + public async Task Edit(Client client) + { + if (ModelState.IsValid) + { + _context.Update(client); + await _context.SaveChangesAsync(); + return RedirectToAction("Index"); + } + return View(client); + } + + // GET: Client/Delete/5 + [ActionName("Delete")] + public async Task Delete(string id) + { + if (id == null) + { + return HttpNotFound(); + } + + Client client = await _context.Applications.SingleAsync(m => m.Id == id); + if (client == null) + { + return HttpNotFound(); + } + + return View(client); + } + + // POST: Client/Delete/5 + [HttpPost, ActionName("Delete")] + [ValidateAntiForgeryToken] + public async Task DeleteConfirmed(string id) + { + Client client = await _context.Applications.SingleAsync(m => m.Id == id); + _context.Applications.Remove(client); + await _context.SaveChangesAsync(); + return RedirectToAction("Index"); + } + } +} diff --git a/Yavsc/Controllers/FrontOfficeController.cs b/Yavsc/Controllers/FrontOfficeController.cs index 01a957dc..3a4a7667 100644 --- a/Yavsc/Controllers/FrontOfficeController.cs +++ b/Yavsc/Controllers/FrontOfficeController.cs @@ -6,6 +6,7 @@ using Microsoft.AspNet.Identity; using Microsoft.Data.Entity; using Microsoft.Extensions.Logging; using Yavsc.Models.Booking; +using Yavsc.Helpers; namespace Yavsc.Controllers { diff --git a/Yavsc/Controllers/OAuthController.cs b/Yavsc/Controllers/OAuthController.cs index 0279c585..fcca1f0a 100644 --- a/Yavsc/Controllers/OAuthController.cs +++ b/Yavsc/Controllers/OAuthController.cs @@ -1,4 +1,5 @@ -using System.Linq; +using System.Collections.Generic; +using System.Linq; using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Authorization; @@ -9,8 +10,10 @@ using Microsoft.AspNet.Mvc; using Microsoft.AspNet.WebUtilities; using Microsoft.Extensions.Logging; using Microsoft.Extensions.OptionsModel; +using Microsoft.Extensions.Primitives; using OAuth.AspNet.AuthServer; using Yavsc.Models; +using Yavsc.Models.Auth; namespace Yavsc.Controllers { @@ -109,7 +112,7 @@ namespace Yavsc.Controllers return Ok(claims); } - [HttpGet(Constants.AuthorizePath)] + [HttpGet(Constants.AuthorizePath),HttpPost(Constants.AuthorizePath)] public async Task Authorize() { if (Response.StatusCode != 200) @@ -118,12 +121,13 @@ namespace Yavsc.Controllers } AuthenticationManager authentication = Request.HttpContext.Authentication; + var appAuthSheme = Startup.IdentityAppOptions.Cookies.ApplicationCookieAuthenticationScheme; - ClaimsPrincipal principal = await authentication.AuthenticateAsync(Constants.ApplicationAuthenticationSheme); + ClaimsPrincipal principal = await authentication.AuthenticateAsync(appAuthSheme); if (principal == null) { - await authentication.ChallengeAsync(Constants.ApplicationAuthenticationSheme); + await authentication.ChallengeAsync(appAuthSheme); if (Response.StatusCode == 200) return new HttpUnauthorizedResult(); @@ -132,15 +136,36 @@ namespace Yavsc.Controllers } string[] scopes = { }; + string redirect_uri = null; + string client_id = null; + string state = null; + + IDictionary queryStringComponents = null; if (Request.QueryString.HasValue) { - var queryStringComponents = QueryHelpers.ParseQuery(Request.QueryString.Value); + queryStringComponents = QueryHelpers.ParseQuery(Request.QueryString.Value); if (queryStringComponents.ContainsKey("scope")) scopes = queryStringComponents["scope"]; + if (queryStringComponents.ContainsKey("redirect_uri")) + redirect_uri = queryStringComponents["redirect_uri"]; + if (queryStringComponents.ContainsKey("client_id")) + client_id = queryStringComponents["client_id"]; + if (queryStringComponents.ContainsKey("state")) + state = queryStringComponents["state"]; } + var model = new AuthorisationView { + Scopes = Constants.SiteScopes.Where(s=> scopes.Contains(s.Id)).ToArray(), + RedirectUrl = redirect_uri, + Message = "Welcome.", + QueryStringComponents = queryStringComponents, + ClientId = client_id, + State = state, + ResponseType="code" + } ; + if (Request.Method == "POST") { if (!string.IsNullOrEmpty(Request.Form["submit.Grant"])) @@ -153,21 +178,19 @@ namespace Yavsc.Controllers { primaryIdentity.AddClaim(new Claim("urn:oauth:scope", scope)); } - + _logger.LogWarning("Logging user {principal} against {OAuthDefaults.AuthenticationType}"); await authentication.SignInAsync(OAuthDefaults.AuthenticationType, principal); } if (!string.IsNullOrEmpty(Request.Form["submit.Login"])) { - await authentication.SignOutAsync(Constants.ApplicationAuthenticationSheme); - - await authentication.ChallengeAsync(Constants.ApplicationAuthenticationSheme); - + await authentication.SignOutAsync(appAuthSheme); + await authentication.ChallengeAsync(appAuthSheme); return new HttpUnauthorizedResult(); } } - return View(new AuthorisationView { Scopes = scopes } ); + return View(model); } } diff --git a/Yavsc/Extensions/SignalRBuilderExtension.cs b/Yavsc/Extensions/SignalRBuilderExtension.cs index 931fb95a..12880498 100644 --- a/Yavsc/Extensions/SignalRBuilderExtension.cs +++ b/Yavsc/Extensions/SignalRBuilderExtension.cs @@ -4,7 +4,7 @@ using Owin; using System; using System.Collections.Generic; using System.Threading.Tasks; -#if OWIN + namespace Yavsc { using Microsoft.AspNet.SignalR; @@ -43,4 +43,3 @@ namespace Yavsc } } } -#endif diff --git a/Yavsc/GoogleApis/MapTracks.cs b/Yavsc/GoogleApis/MapTracks.cs index d65fcae5..a3f7c8d8 100644 --- a/Yavsc/GoogleApis/MapTracks.cs +++ b/Yavsc/GoogleApis/MapTracks.cs @@ -18,6 +18,7 @@ // // You should have received a copy of the GNU Lesser General Public License // along with this program. If not, see . +using Yavsc.Helpers; using Yavsc.Model; using Yavsc.Models.Google; diff --git a/Yavsc/Helpers/AuthHelpers.cs b/Yavsc/Helpers/AuthHelpers.cs index 9d461151..790e4c6a 100644 --- a/Yavsc/Helpers/AuthHelpers.cs +++ b/Yavsc/Helpers/AuthHelpers.cs @@ -4,7 +4,7 @@ using System.Collections.Generic; using Microsoft.AspNet.Http; using Microsoft.AspNet.Http.Authentication; -namespace Yavsc.Extensions { +namespace Yavsc.Helpers { public static class HttpContextExtensions { public static IEnumerable GetExternalProviders(this HttpContext context) { if (context == null) { @@ -26,4 +26,6 @@ namespace Yavsc.Extensions { select description).Any(); } } + + } \ No newline at end of file diff --git a/Yavsc/Helpers/ListItemHelpers.cs b/Yavsc/Helpers/ListItemHelpers.cs index 3a4734d1..5a9c2b60 100644 --- a/Yavsc/Helpers/ListItemHelpers.cs +++ b/Yavsc/Helpers/ListItemHelpers.cs @@ -4,7 +4,7 @@ using System.Linq; using Microsoft.AspNet.Mvc.Rendering; using Yavsc.Models; -namespace Yavsc { +namespace Yavsc.Helpers { public static class ListItemHelpers { public static List ActivityItems( diff --git a/Yavsc/Helpers/OAuthHelpers.cs b/Yavsc/Helpers/OAuthHelpers.cs new file mode 100644 index 00000000..0363b73a --- /dev/null +++ b/Yavsc/Helpers/OAuthHelpers.cs @@ -0,0 +1,18 @@ +using System; +using System.Security.Cryptography; + +namespace Yavsc.Helpers { +public class Helper + { + public static string GetHash(string input) + { + HashAlgorithm hashAlgorithm = new SHA256CryptoServiceProvider(); + + byte[] byteValue = System.Text.Encoding.UTF8.GetBytes(input); + + byte[] byteHash = hashAlgorithm.ComputeHash(byteValue); + + return Convert.ToBase64String(byteHash); + } + } +} \ No newline at end of file diff --git a/Yavsc/Helpers/SimpleJsonPostMethod.cs b/Yavsc/Helpers/SimpleJsonPostMethod.cs index 29303247..71da12c0 100644 --- a/Yavsc/Helpers/SimpleJsonPostMethod.cs +++ b/Yavsc/Helpers/SimpleJsonPostMethod.cs @@ -23,7 +23,7 @@ using System.Net; using System.IO; using Newtonsoft.Json; -namespace Yavsc.Model +namespace Yavsc.Helpers { /// /// Simple json post method. diff --git a/Yavsc/Migrations/20160610153353_client.Designer.cs b/Yavsc/Migrations/20160610153353_client.Designer.cs new file mode 100644 index 00000000..bb3526b2 --- /dev/null +++ b/Yavsc/Migrations/20160610153353_client.Designer.cs @@ -0,0 +1,694 @@ +using System; +using Microsoft.Data.Entity; +using Microsoft.Data.Entity.Infrastructure; +using Microsoft.Data.Entity.Metadata; +using Microsoft.Data.Entity.Migrations; +using Yavsc.Models; + +namespace Yavsc.Migrations +{ + [DbContext(typeof(ApplicationDbContext))] + [Migration("20160610153353_client")] + partial class client + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { + modelBuilder + .HasAnnotation("ProductVersion", "7.0.0-rc1-16348"); + + modelBuilder.Entity("GoogleCloudMobileDeclaration", b => + { + b.Property("RegistrationId"); + + b.Property("DeviceOwnerId"); + + b.Property("Name"); + + b.HasKey("RegistrationId"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityRole", b => + { + b.Property("Id"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken(); + + b.Property("Name") + .HasAnnotation("MaxLength", 256); + + b.Property("NormalizedName") + .HasAnnotation("MaxLength", 256); + + b.HasKey("Id"); + + b.HasIndex("NormalizedName") + .HasAnnotation("Relational:Name", "RoleNameIndex"); + + b.HasAnnotation("Relational:TableName", "AspNetRoles"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityRoleClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClaimType"); + + b.Property("ClaimValue"); + + b.Property("RoleId") + .IsRequired(); + + b.HasKey("Id"); + + b.HasAnnotation("Relational:TableName", "AspNetRoleClaims"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityUserClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClaimType"); + + b.Property("ClaimValue"); + + b.Property("UserId") + .IsRequired(); + + b.HasKey("Id"); + + b.HasAnnotation("Relational:TableName", "AspNetUserClaims"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityUserLogin", b => + { + b.Property("LoginProvider"); + + b.Property("ProviderKey"); + + b.Property("ProviderDisplayName"); + + b.Property("UserId") + .IsRequired(); + + b.HasKey("LoginProvider", "ProviderKey"); + + b.HasAnnotation("Relational:TableName", "AspNetUserLogins"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole", b => + { + b.Property("UserId"); + + b.Property("RoleId"); + + b.HasKey("UserId", "RoleId"); + + b.HasAnnotation("Relational:TableName", "AspNetUserRoles"); + }); + + modelBuilder.Entity("Yavsc.Location", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("Address") + .IsRequired(); + + b.Property("Latitude"); + + b.Property("Longitude"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.AccountBalance", b => + { + b.Property("UserId"); + + b.Property("ContactCredits"); + + b.Property("Credits"); + + b.HasKey("UserId"); + }); + + modelBuilder.Entity("Yavsc.Models.Activity", b => + { + b.Property("Code") + .HasAnnotation("MaxLength", 512); + + b.Property("ActorDenomination"); + + b.Property("Description"); + + b.Property("ModeratorGroupName"); + + b.Property("Name") + .IsRequired() + .HasAnnotation("MaxLength", 512); + + b.Property("Photo"); + + b.HasKey("Code"); + }); + + modelBuilder.Entity("Yavsc.Models.ApplicationUser", b => + { + b.Property("Id"); + + b.Property("AccessFailedCount"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken(); + + b.Property("DedicatedGoogleCalendar"); + + b.Property("Email") + .HasAnnotation("MaxLength", 256); + + b.Property("EmailConfirmed"); + + b.Property("LockoutEnabled"); + + b.Property("LockoutEnd"); + + b.Property("NormalizedEmail") + .HasAnnotation("MaxLength", 256); + + b.Property("NormalizedUserName") + .HasAnnotation("MaxLength", 256); + + b.Property("PasswordHash"); + + b.Property("PhoneNumber"); + + b.Property("PhoneNumberConfirmed"); + + b.Property("PostalAddressId"); + + b.Property("SecurityStamp"); + + b.Property("TwoFactorEnabled"); + + b.Property("UserName") + .HasAnnotation("MaxLength", 256); + + b.HasKey("Id"); + + b.HasIndex("NormalizedEmail") + .HasAnnotation("Relational:Name", "EmailIndex"); + + b.HasIndex("NormalizedUserName") + .HasAnnotation("Relational:Name", "UserNameIndex"); + + b.HasAnnotation("Relational:TableName", "AspNetUsers"); + }); + + modelBuilder.Entity("Yavsc.Models.Auth.Client", b => + { + b.Property("Id"); + + b.Property("Active"); + + b.Property("AllowedOrigin") + .HasAnnotation("MaxLength", 100); + + b.Property("DisplayName"); + + b.Property("LogoutRedirectUri"); + + b.Property("RedirectUri"); + + b.Property("RefreshTokenLifeTime"); + + b.Property("Secret"); + + b.Property("Type"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Auth.RefreshToken", b => + { + b.Property("Id"); + + b.Property("ClientId") + .IsRequired() + .HasAnnotation("MaxLength", 50); + + b.Property("ExpiresUtc"); + + b.Property("IssuedUtc"); + + b.Property("ProtectedTicket") + .IsRequired(); + + b.Property("Subject") + .IsRequired() + .HasAnnotation("MaxLength", 50); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.BalanceImpact", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("BalanceId") + .IsRequired(); + + b.Property("ExecDate"); + + b.Property("Impact"); + + b.Property("Reason") + .IsRequired(); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.BaseProduct", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("Description"); + + b.Property("Name"); + + b.Property("Public"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Blog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AuthorId") + .IsRequired(); + + b.Property("bcontent"); + + b.Property("modified"); + + b.Property("photo"); + + b.Property("posted"); + + b.Property("rate"); + + b.Property("title"); + + b.Property("visible"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Booking.BookQuery", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClientId") + .IsRequired(); + + b.Property("CreationDate") + .ValueGeneratedOnAdd() + .HasAnnotation("Relational:GeneratedValueSql", "LOCALTIMESTAMP"); + + b.Property("EventDate"); + + b.Property("Lag"); + + b.Property("LocationId"); + + b.Property("PerformerId") + .IsRequired(); + + b.Property("Previsional"); + + b.Property("ValidationDate"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Circle", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("Name"); + + b.Property("OwnerId"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.CircleMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("CircleId") + .IsRequired(); + + b.Property("MemberId") + .IsRequired(); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Command", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClientId") + .IsRequired(); + + b.Property("CreationDate"); + + b.Property("Lag"); + + b.Property("PerformerId") + .IsRequired(); + + b.Property("Previsional"); + + b.Property("ValidationDate"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.CommandLine", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ArticleId"); + + b.Property("BookQueryId"); + + b.Property("CommandId"); + + b.Property("Comment"); + + b.Property("Count"); + + b.Property("EstimateId"); + + b.Property("UnitaryCost"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Contact", b => + { + b.Property("OwnerId"); + + b.Property("UserId"); + + b.HasKey("OwnerId", "UserId"); + }); + + modelBuilder.Entity("Yavsc.Models.Estimate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AttachedFilesString"); + + b.Property("AttachedGraphicsString"); + + b.Property("CommandId"); + + b.Property("Description"); + + b.Property("Status"); + + b.Property("Title"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.OAuth.OAuth2Tokens", b => + { + b.Property("UserId"); + + b.Property("AccessToken"); + + b.Property("Expiration"); + + b.Property("ExpiresIn"); + + b.Property("RefreshToken"); + + b.Property("TokenType"); + + b.HasKey("UserId"); + }); + + modelBuilder.Entity("Yavsc.Models.PerformerProfile", b => + { + b.Property("PerfomerId"); + + b.Property("AcceptGeoLocalisation"); + + b.Property("AcceptNotifications"); + + b.Property("AcceptPublicContact"); + + b.Property("Active"); + + b.Property("ActivityCode") + .IsRequired(); + + b.Property("MaxDailyCost"); + + b.Property("MinDailyCost"); + + b.Property("OfferId"); + + b.Property("OrganisationAddressId"); + + b.Property("Rate"); + + b.Property("SIREN") + .IsRequired() + .HasAnnotation("MaxLength", 14); + + b.Property("WebSite"); + + b.HasKey("PerfomerId"); + }); + + modelBuilder.Entity("Yavsc.Models.Service", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("Billing"); + + b.Property("ContextId"); + + b.Property("Description"); + + b.Property("Name"); + + b.Property("Pricing"); + + b.Property("Public"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Skill", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("Name"); + + b.Property("Rate"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("GoogleCloudMobileDeclaration", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("DeviceOwnerId"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityRoleClaim", b => + { + b.HasOne("Microsoft.AspNet.Identity.EntityFramework.IdentityRole") + .WithMany() + .HasForeignKey("RoleId"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityUserClaim", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("UserId"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityUserLogin", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("UserId"); + }); + + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole", b => + { + b.HasOne("Microsoft.AspNet.Identity.EntityFramework.IdentityRole") + .WithMany() + .HasForeignKey("RoleId"); + + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("UserId"); + }); + + modelBuilder.Entity("Yavsc.Models.AccountBalance", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithOne() + .HasForeignKey("Yavsc.Models.AccountBalance", "UserId"); + }); + + modelBuilder.Entity("Yavsc.Models.ApplicationUser", b => + { + b.HasOne("Yavsc.Location") + .WithMany() + .HasForeignKey("PostalAddressId"); + }); + + modelBuilder.Entity("Yavsc.Models.BalanceImpact", b => + { + b.HasOne("Yavsc.Models.AccountBalance") + .WithMany() + .HasForeignKey("BalanceId"); + }); + + modelBuilder.Entity("Yavsc.Models.Blog", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("AuthorId"); + }); + + modelBuilder.Entity("Yavsc.Models.Booking.BookQuery", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("ClientId"); + + b.HasOne("Yavsc.Location") + .WithMany() + .HasForeignKey("LocationId"); + + b.HasOne("Yavsc.Models.PerformerProfile") + .WithMany() + .HasForeignKey("PerformerId"); + }); + + modelBuilder.Entity("Yavsc.Models.Circle", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("OwnerId"); + }); + + modelBuilder.Entity("Yavsc.Models.CircleMember", b => + { + b.HasOne("Yavsc.Models.Circle") + .WithMany() + .HasForeignKey("CircleId"); + + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("MemberId"); + }); + + modelBuilder.Entity("Yavsc.Models.Command", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("ClientId"); + + b.HasOne("Yavsc.Models.PerformerProfile") + .WithMany() + .HasForeignKey("PerformerId"); + }); + + modelBuilder.Entity("Yavsc.Models.CommandLine", b => + { + b.HasOne("Yavsc.Models.BaseProduct") + .WithMany() + .HasForeignKey("ArticleId"); + + b.HasOne("Yavsc.Models.Booking.BookQuery") + .WithMany() + .HasForeignKey("BookQueryId"); + + b.HasOne("Yavsc.Models.Command") + .WithMany() + .HasForeignKey("CommandId"); + + b.HasOne("Yavsc.Models.Estimate") + .WithMany() + .HasForeignKey("EstimateId"); + }); + + modelBuilder.Entity("Yavsc.Models.Contact", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("OwnerId"); + }); + + modelBuilder.Entity("Yavsc.Models.Estimate", b => + { + b.HasOne("Yavsc.Models.Command") + .WithMany() + .HasForeignKey("CommandId"); + }); + + modelBuilder.Entity("Yavsc.Models.PerformerProfile", b => + { + b.HasOne("Yavsc.Models.Activity") + .WithMany() + .HasForeignKey("ActivityCode"); + + b.HasOne("Yavsc.Models.Service") + .WithMany() + .HasForeignKey("OfferId"); + + b.HasOne("Yavsc.Location") + .WithMany() + .HasForeignKey("OrganisationAddressId"); + + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("PerfomerId"); + }); + + modelBuilder.Entity("Yavsc.Models.Service", b => + { + b.HasOne("Yavsc.Models.Activity") + .WithMany() + .HasForeignKey("ContextId"); + }); + } + } +} diff --git a/Yavsc/Migrations/20160610153353_client.cs b/Yavsc/Migrations/20160610153353_client.cs new file mode 100644 index 00000000..a3f674d2 --- /dev/null +++ b/Yavsc/Migrations/20160610153353_client.cs @@ -0,0 +1,395 @@ +using System; +using System.Collections.Generic; +using Microsoft.Data.Entity.Migrations; + +namespace Yavsc.Migrations +{ + public partial class client : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey(name: "FK_IdentityRoleClaim_IdentityRole_RoleId", table: "AspNetRoleClaims"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserClaim_ApplicationUser_UserId", table: "AspNetUserClaims"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserLogin_ApplicationUser_UserId", table: "AspNetUserLogins"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserRole_IdentityRole_RoleId", table: "AspNetUserRoles"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserRole_ApplicationUser_UserId", table: "AspNetUserRoles"); + migrationBuilder.DropForeignKey(name: "FK_AccountBalance_ApplicationUser_UserId", table: "AccountBalance"); + migrationBuilder.DropForeignKey(name: "FK_BalanceImpact_AccountBalance_BalanceId", table: "BalanceImpact"); + migrationBuilder.DropForeignKey(name: "FK_Blog_ApplicationUser_AuthorId", table: "Blog"); + migrationBuilder.DropForeignKey(name: "FK_BookQuery_ApplicationUser_ClientId", table: "BookQuery"); + migrationBuilder.DropForeignKey(name: "FK_BookQuery_Location_LocationId", table: "BookQuery"); + migrationBuilder.DropForeignKey(name: "FK_BookQuery_PerformerProfile_PerformerId", table: "BookQuery"); + migrationBuilder.DropForeignKey(name: "FK_CircleMember_Circle_CircleId", table: "CircleMember"); + migrationBuilder.DropForeignKey(name: "FK_CircleMember_ApplicationUser_MemberId", table: "CircleMember"); + migrationBuilder.DropForeignKey(name: "FK_Command_ApplicationUser_ClientId", table: "Command"); + migrationBuilder.DropForeignKey(name: "FK_Command_PerformerProfile_PerformerId", table: "Command"); + migrationBuilder.DropForeignKey(name: "FK_Contact_ApplicationUser_OwnerId", table: "Contact"); + migrationBuilder.DropForeignKey(name: "FK_PerformerProfile_Activity_ActivityCode", table: "PerformerProfile"); + migrationBuilder.DropForeignKey(name: "FK_PerformerProfile_Location_OrganisationAddressId", table: "PerformerProfile"); + migrationBuilder.DropForeignKey(name: "FK_PerformerProfile_ApplicationUser_PerfomerId", table: "PerformerProfile"); + migrationBuilder.DropColumn(name: "GoogleRegId", table: "AspNetUsers"); + migrationBuilder.DropTable("Application"); + migrationBuilder.CreateTable( + name: "GoogleCloudMobileDeclaration", + columns: table => new + { + RegistrationId = table.Column(nullable: false), + DeviceOwnerId = table.Column(nullable: true), + Name = table.Column(nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_GoogleCloudMobileDeclaration", x => x.RegistrationId); + table.ForeignKey( + name: "FK_GoogleCloudMobileDeclaration_ApplicationUser_DeviceOwnerId", + column: x => x.DeviceOwnerId, + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + }); + migrationBuilder.CreateTable( + name: "Client", + columns: table => new + { + Id = table.Column(nullable: false), + Active = table.Column(nullable: false), + AllowedOrigin = table.Column(nullable: true), + DisplayName = table.Column(nullable: true), + LogoutRedirectUri = table.Column(nullable: true), + RedirectUri = table.Column(nullable: true), + RefreshTokenLifeTime = table.Column(nullable: false), + Secret = table.Column(nullable: true), + Type = table.Column(nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Client", x => x.Id); + }); + migrationBuilder.CreateTable( + name: "RefreshToken", + columns: table => new + { + Id = table.Column(nullable: false), + ClientId = table.Column(nullable: false), + ExpiresUtc = table.Column(nullable: false), + IssuedUtc = table.Column(nullable: false), + ProtectedTicket = table.Column(nullable: false), + Subject = table.Column(nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_RefreshToken", x => x.Id); + }); + migrationBuilder.AddForeignKey( + name: "FK_IdentityRoleClaim_IdentityRole_RoleId", + table: "AspNetRoleClaims", + column: "RoleId", + principalTable: "AspNetRoles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserClaim_ApplicationUser_UserId", + table: "AspNetUserClaims", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserLogin_ApplicationUser_UserId", + table: "AspNetUserLogins", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserRole_IdentityRole_RoleId", + table: "AspNetUserRoles", + column: "RoleId", + principalTable: "AspNetRoles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserRole_ApplicationUser_UserId", + table: "AspNetUserRoles", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_AccountBalance_ApplicationUser_UserId", + table: "AccountBalance", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_BalanceImpact_AccountBalance_BalanceId", + table: "BalanceImpact", + column: "BalanceId", + principalTable: "AccountBalance", + principalColumn: "UserId", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_Blog_ApplicationUser_AuthorId", + table: "Blog", + column: "AuthorId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_BookQuery_ApplicationUser_ClientId", + table: "BookQuery", + column: "ClientId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_BookQuery_Location_LocationId", + table: "BookQuery", + column: "LocationId", + principalTable: "Location", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_BookQuery_PerformerProfile_PerformerId", + table: "BookQuery", + column: "PerformerId", + principalTable: "PerformerProfile", + principalColumn: "PerfomerId", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_CircleMember_Circle_CircleId", + table: "CircleMember", + column: "CircleId", + principalTable: "Circle", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_CircleMember_ApplicationUser_MemberId", + table: "CircleMember", + column: "MemberId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_Command_ApplicationUser_ClientId", + table: "Command", + column: "ClientId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_Command_PerformerProfile_PerformerId", + table: "Command", + column: "PerformerId", + principalTable: "PerformerProfile", + principalColumn: "PerfomerId", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_Contact_ApplicationUser_OwnerId", + table: "Contact", + column: "OwnerId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_PerformerProfile_Activity_ActivityCode", + table: "PerformerProfile", + column: "ActivityCode", + principalTable: "Activity", + principalColumn: "Code", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_PerformerProfile_Location_OrganisationAddressId", + table: "PerformerProfile", + column: "OrganisationAddressId", + principalTable: "Location", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + migrationBuilder.AddForeignKey( + name: "FK_PerformerProfile_ApplicationUser_PerfomerId", + table: "PerformerProfile", + column: "PerfomerId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey(name: "FK_IdentityRoleClaim_IdentityRole_RoleId", table: "AspNetRoleClaims"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserClaim_ApplicationUser_UserId", table: "AspNetUserClaims"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserLogin_ApplicationUser_UserId", table: "AspNetUserLogins"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserRole_IdentityRole_RoleId", table: "AspNetUserRoles"); + migrationBuilder.DropForeignKey(name: "FK_IdentityUserRole_ApplicationUser_UserId", table: "AspNetUserRoles"); + migrationBuilder.DropForeignKey(name: "FK_AccountBalance_ApplicationUser_UserId", table: "AccountBalance"); + migrationBuilder.DropForeignKey(name: "FK_BalanceImpact_AccountBalance_BalanceId", table: "BalanceImpact"); + migrationBuilder.DropForeignKey(name: "FK_Blog_ApplicationUser_AuthorId", table: "Blog"); + migrationBuilder.DropForeignKey(name: "FK_BookQuery_ApplicationUser_ClientId", table: "BookQuery"); + migrationBuilder.DropForeignKey(name: "FK_BookQuery_Location_LocationId", table: "BookQuery"); + migrationBuilder.DropForeignKey(name: "FK_BookQuery_PerformerProfile_PerformerId", table: "BookQuery"); + migrationBuilder.DropForeignKey(name: "FK_CircleMember_Circle_CircleId", table: "CircleMember"); + migrationBuilder.DropForeignKey(name: "FK_CircleMember_ApplicationUser_MemberId", table: "CircleMember"); + migrationBuilder.DropForeignKey(name: "FK_Command_ApplicationUser_ClientId", table: "Command"); + migrationBuilder.DropForeignKey(name: "FK_Command_PerformerProfile_PerformerId", table: "Command"); + migrationBuilder.DropForeignKey(name: "FK_Contact_ApplicationUser_OwnerId", table: "Contact"); + migrationBuilder.DropForeignKey(name: "FK_PerformerProfile_Activity_ActivityCode", table: "PerformerProfile"); + migrationBuilder.DropForeignKey(name: "FK_PerformerProfile_Location_OrganisationAddressId", table: "PerformerProfile"); + migrationBuilder.DropForeignKey(name: "FK_PerformerProfile_ApplicationUser_PerfomerId", table: "PerformerProfile"); + migrationBuilder.DropTable("GoogleCloudMobileDeclaration"); + migrationBuilder.DropTable("Client"); + migrationBuilder.DropTable("RefreshToken"); + migrationBuilder.CreateTable( + name: "Application", + columns: table => new + { + ApplicationID = table.Column(nullable: false), + DisplayName = table.Column(nullable: true), + LogoutRedirectUri = table.Column(nullable: true), + RedirectUri = table.Column(nullable: true), + Secret = table.Column(nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_Application", x => x.ApplicationID); + }); + migrationBuilder.AddColumn( + name: "GoogleRegId", + table: "AspNetUsers", + nullable: true); + migrationBuilder.AddForeignKey( + name: "FK_IdentityRoleClaim_IdentityRole_RoleId", + table: "AspNetRoleClaims", + column: "RoleId", + principalTable: "AspNetRoles", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserClaim_ApplicationUser_UserId", + table: "AspNetUserClaims", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserLogin_ApplicationUser_UserId", + table: "AspNetUserLogins", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserRole_IdentityRole_RoleId", + table: "AspNetUserRoles", + column: "RoleId", + principalTable: "AspNetRoles", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserRole_ApplicationUser_UserId", + table: "AspNetUserRoles", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_AccountBalance_ApplicationUser_UserId", + table: "AccountBalance", + column: "UserId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_BalanceImpact_AccountBalance_BalanceId", + table: "BalanceImpact", + column: "BalanceId", + principalTable: "AccountBalance", + principalColumn: "UserId", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_Blog_ApplicationUser_AuthorId", + table: "Blog", + column: "AuthorId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_BookQuery_ApplicationUser_ClientId", + table: "BookQuery", + column: "ClientId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_BookQuery_Location_LocationId", + table: "BookQuery", + column: "LocationId", + principalTable: "Location", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_BookQuery_PerformerProfile_PerformerId", + table: "BookQuery", + column: "PerformerId", + principalTable: "PerformerProfile", + principalColumn: "PerfomerId", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_CircleMember_Circle_CircleId", + table: "CircleMember", + column: "CircleId", + principalTable: "Circle", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_CircleMember_ApplicationUser_MemberId", + table: "CircleMember", + column: "MemberId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_Command_ApplicationUser_ClientId", + table: "Command", + column: "ClientId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_Command_PerformerProfile_PerformerId", + table: "Command", + column: "PerformerId", + principalTable: "PerformerProfile", + principalColumn: "PerfomerId", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_Contact_ApplicationUser_OwnerId", + table: "Contact", + column: "OwnerId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_PerformerProfile_Activity_ActivityCode", + table: "PerformerProfile", + column: "ActivityCode", + principalTable: "Activity", + principalColumn: "Code", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_PerformerProfile_Location_OrganisationAddressId", + table: "PerformerProfile", + column: "OrganisationAddressId", + principalTable: "Location", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + migrationBuilder.AddForeignKey( + name: "FK_PerformerProfile_ApplicationUser_PerfomerId", + table: "PerformerProfile", + column: "PerfomerId", + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + } + } +} diff --git a/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs b/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs index 666c4d69..38510039 100644 --- a/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs +++ b/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs @@ -1,6 +1,8 @@ using System; using Microsoft.Data.Entity; using Microsoft.Data.Entity.Infrastructure; +using Microsoft.Data.Entity.Metadata; +using Microsoft.Data.Entity.Migrations; using Yavsc.Models; namespace Yavsc.Migrations @@ -13,6 +15,17 @@ namespace Yavsc.Migrations modelBuilder .HasAnnotation("ProductVersion", "7.0.0-rc1-16348"); + modelBuilder.Entity("GoogleCloudMobileDeclaration", b => + { + b.Property("RegistrationId"); + + b.Property("DeviceOwnerId"); + + b.Property("Name"); + + b.HasKey("RegistrationId"); + }); + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityRole", b => { b.Property("Id"); @@ -95,21 +108,6 @@ namespace Yavsc.Migrations b.HasAnnotation("Relational:TableName", "AspNetUserRoles"); }); - modelBuilder.Entity("Yavsc.Application", b => - { - b.Property("ApplicationID"); - - b.Property("DisplayName"); - - b.Property("LogoutRedirectUri"); - - b.Property("RedirectUri"); - - b.Property("Secret"); - - b.HasKey("ApplicationID"); - }); - modelBuilder.Entity("Yavsc.Location", b => { b.Property("Id") @@ -172,8 +170,6 @@ namespace Yavsc.Migrations b.Property("EmailConfirmed"); - b.Property("GoogleRegId"); - b.Property("LockoutEnabled"); b.Property("LockoutEnd"); @@ -210,6 +206,52 @@ namespace Yavsc.Migrations b.HasAnnotation("Relational:TableName", "AspNetUsers"); }); + modelBuilder.Entity("Yavsc.Models.Auth.Client", b => + { + b.Property("Id"); + + b.Property("Active"); + + b.Property("AllowedOrigin") + .HasAnnotation("MaxLength", 100); + + b.Property("DisplayName"); + + b.Property("LogoutRedirectUri"); + + b.Property("RedirectUri"); + + b.Property("RefreshTokenLifeTime"); + + b.Property("Secret"); + + b.Property("Type"); + + b.HasKey("Id"); + }); + + modelBuilder.Entity("Yavsc.Models.Auth.RefreshToken", b => + { + b.Property("Id"); + + b.Property("ClientId") + .IsRequired() + .HasAnnotation("MaxLength", 50); + + b.Property("ExpiresUtc"); + + b.Property("IssuedUtc"); + + b.Property("ProtectedTicket") + .IsRequired(); + + b.Property("Subject") + .IsRequired() + .HasAnnotation("MaxLength", 50); + + b.HasKey("Id"); + }); + modelBuilder.Entity("Yavsc.Models.BalanceImpact", b => { b.Property("Id") @@ -394,7 +436,7 @@ namespace Yavsc.Migrations b.HasKey("Id"); }); - modelBuilder.Entity("Yavsc.Models.OAuth2Tokens", b => + modelBuilder.Entity("Yavsc.Models.OAuth.OAuth2Tokens", b => { b.Property("UserId"); @@ -477,6 +519,13 @@ namespace Yavsc.Migrations b.HasKey("Id"); }); + modelBuilder.Entity("GoogleCloudMobileDeclaration", b => + { + b.HasOne("Yavsc.Models.ApplicationUser") + .WithMany() + .HasForeignKey("DeviceOwnerId"); + }); + modelBuilder.Entity("Microsoft.AspNet.Identity.EntityFramework.IdentityRoleClaim", b => { b.HasOne("Microsoft.AspNet.Identity.EntityFramework.IdentityRole") diff --git a/Yavsc/Model/ApplicationDbContext.cs b/Yavsc/Model/ApplicationDbContext.cs index f262c1df..07474859 100644 --- a/Yavsc/Model/ApplicationDbContext.cs +++ b/Yavsc/Model/ApplicationDbContext.cs @@ -5,7 +5,9 @@ using System.Threading.Tasks; using Microsoft.AspNet.Authentication.OAuth; using Microsoft.AspNet.Identity.EntityFramework; using Microsoft.Data.Entity; +using Yavsc.Models.Auth; using Yavsc.Models.Booking; +using Yavsc.Models.OAuth; namespace Yavsc.Models { @@ -26,7 +28,9 @@ namespace Yavsc.Models optionsBuilder.UseNpgsql(Startup.ConnectionString); } - public DbSet Applications { get; set; } + public DbSet Applications { get; set; } + + public DbSet RefreshTokens { get; set; } /// /// Activities referenced on this site /// @@ -151,10 +155,12 @@ namespace Yavsc.Models return Task.FromResult(0); } - Application FindApplication(string clientId) + Client FindApplication(string clientId) { return Applications.FirstOrDefault( - app=>app.ApplicationID == clientId); + app=>app.Id == clientId); } + + } } diff --git a/Yavsc/Model/Auth/ApplicationTypes.cs b/Yavsc/Model/Auth/ApplicationTypes.cs new file mode 100644 index 00000000..745fb027 --- /dev/null +++ b/Yavsc/Model/Auth/ApplicationTypes.cs @@ -0,0 +1,10 @@ + + +namespace Yavsc.Models.Auth +{ + public enum ApplicationTypes: int + { + JavaScript = 0, + NativeConfidential = 1 + }; +} \ No newline at end of file diff --git a/Yavsc/Model/Auth/Application.cs b/Yavsc/Model/Auth/Client.cs similarity index 50% rename from Yavsc/Model/Auth/Application.cs rename to Yavsc/Model/Auth/Client.cs index 51614a21..4de3a3bd 100644 --- a/Yavsc/Model/Auth/Application.cs +++ b/Yavsc/Model/Auth/Client.cs @@ -1,14 +1,20 @@ using System.ComponentModel.DataAnnotations; -namespace Yavsc +namespace Yavsc.Models.Auth { - public class Application + public class Client { [Key] - public string ApplicationID { get; set; } + public string Id { get; set; } public string DisplayName { get; set; } public string RedirectUri { get; set; } + [MaxLength(100)] public string LogoutRedirectUri { get; set; } public string Secret { get; set; } + public ApplicationTypes Type { get; set; } + + public bool Active { get; set; } + public int RefreshTokenLifeTime { get; set; } + } } diff --git a/Yavsc/Model/Auth/ExternalViewModel.cs b/Yavsc/Model/Auth/ExternalViewModel.cs new file mode 100644 index 00000000..6c47489b --- /dev/null +++ b/Yavsc/Model/Auth/ExternalViewModel.cs @@ -0,0 +1,33 @@ + +using System.ComponentModel.DataAnnotations; + +namespace Yavsc.Models.Auth { + +public class ExternalLoginViewModel + { + public string Name { get; set; } + + public string Url { get; set; } + + public string State { get; set; } + } + + public class RegisterExternalBindingModel + { + [Required] + public string UserName { get; set; } + + [Required] + public string Provider { get; set; } + + [Required] + public string ExternalAccessToken { get; set; } + + } + + public class ParsedExternalAccessToken + { + public string user_id { get; set; } + public string app_id { get; set; } + } +} diff --git a/Yavsc/Model/Identity/OAuth2Tokens.cs b/Yavsc/Model/Auth/OAuth2Tokens.cs similarity index 91% rename from Yavsc/Model/Identity/OAuth2Tokens.cs rename to Yavsc/Model/Auth/OAuth2Tokens.cs index 39284227..74551263 100644 --- a/Yavsc/Model/Identity/OAuth2Tokens.cs +++ b/Yavsc/Model/Auth/OAuth2Tokens.cs @@ -1,11 +1,11 @@ using System; using System.ComponentModel.DataAnnotations; -namespace Yavsc.Models +namespace Yavsc.Models.OAuth { /// /// OffLine OAuth2 Token - /// To use against the Google Calendar Api + /// To use against a third party Api /// public partial class OAuth2Tokens { @@ -17,7 +17,7 @@ namespace Yavsc.Models public string UserId { get; set; } /// - /// Expiration date & time + /// Expiration date & time /// /// public DateTime Expiration { get; set; } diff --git a/Yavsc/Model/Auth/RefreshToken.cs b/Yavsc/Model/Auth/RefreshToken.cs new file mode 100644 index 00000000..89642295 --- /dev/null +++ b/Yavsc/Model/Auth/RefreshToken.cs @@ -0,0 +1,23 @@ +using System; +using System.ComponentModel.DataAnnotations; + +namespace Yavsc.Models.Auth + { + + + public class RefreshToken + { + [Key] + public string Id { get; set; } + [Required] + [MaxLength(50)] + public string Subject { get; set; } + [Required] + [MaxLength(50)] + public string ClientId { get; set; } + public DateTime IssuedUtc { get; set; } + public DateTime ExpiresUtc { get; set; } + [Required] + public string ProtectedTicket { get; set; } + } + } \ No newline at end of file diff --git a/Yavsc/Model/Auth/Scope.cs b/Yavsc/Model/Auth/Scope.cs index 2fa1ddff..89129087 100644 --- a/Yavsc/Model/Auth/Scope.cs +++ b/Yavsc/Model/Auth/Scope.cs @@ -1,6 +1,11 @@ +using System.ComponentModel.DataAnnotations; + namespace Yavsc.Models.Auth { public class Scope { + + + [Key] public string Id { get; set; } diff --git a/Yavsc/Model/Auth/UserCredentials.cs b/Yavsc/Model/Auth/UserCredentials.cs index 1f344969..96e02ad3 100644 --- a/Yavsc/Model/Auth/UserCredentials.cs +++ b/Yavsc/Model/Auth/UserCredentials.cs @@ -1,4 +1,6 @@ +using Yavsc.Models.OAuth; + namespace Yavsc.Models.Auth { public class UserCredential { diff --git a/Yavsc/Startup/Startup.OAuth.cs b/Yavsc/Startup/Startup.OAuth.cs index f2116214..04aa8da3 100644 --- a/Yavsc/Startup/Startup.OAuth.cs +++ b/Yavsc/Startup/Startup.OAuth.cs @@ -1,6 +1,8 @@ using System; using System.Security.Claims; using Microsoft.AspNet.Authentication; +using Microsoft.AspNet.Authentication.Cookies; +using Microsoft.AspNet.Authentication.Facebook; using Microsoft.AspNet.Authentication.OAuth; using Microsoft.AspNet.Builder; using Microsoft.AspNet.Http; @@ -18,10 +20,21 @@ namespace Yavsc public partial class Startup { + public static CookieAuthenticationOptions ExternalCookieAppOptions { get; private set; } + + public static IdentityOptions IdentityAppOptions { get; set; } + public static FacebookOptions FacebookAppOptions { get; private set; } + public static OAuthAuthorizationServerOptions OAuthServerAppOptions { get; private set; } + + public static YavscGoogleOptions YavscGoogleAppOptions { get; private set; } + public static MonoDataProtectionProvider ProtectionProvider { get; private set; } + + // public static CookieAuthenticationOptions BearerCookieOptions { get; private set; } + private void ConfigureOAuthServices(IServiceCollection services) { services.Configure(options => options.SignInScheme = Constants.ApplicationAuthenticationSheme); - + services.Add(ServiceDescriptor.Singleton(typeof(IOptions), typeof(OptionsManager))); // used by the YavscGoogleOAuth middelware (TODO drop it) services.AddTransient(); @@ -42,57 +55,98 @@ namespace Yavsc new SigningCredentials(key, SecurityAlgorithms.RsaSha256Signature); } ); */ - services.AddAuthentication(options => + services.AddAuthentication(options => { - options.SignInScheme = Constants.ApplicationAuthenticationSheme; + options.SignInScheme = Constants.ExternalAuthenticationSheme; }); - var protector = new MonoDataProtectionProvider(Configuration["Site:Title"]);; - services.AddInstance( - protector - ); + ProtectionProvider = new MonoDataProtectionProvider(Configuration["Site:Title"]); ; + services.AddInstance + (ProtectionProvider); services.AddIdentity( option => { + IdentityAppOptions = option; option.User.AllowedUserNameCharacters += " "; option.User.RequireUniqueEmail = true; - option.Cookies.ApplicationCookie.DataProtectionProvider = protector; - - option.Cookies.ApplicationCookie.LoginPath = new PathString(Constants.LoginPath.Substring(1)); - option.Cookies.ApplicationCookie.AccessDeniedPath = new PathString(Constants.AccessDeniedPath.Substring(1)); - option.Cookies.ApplicationCookie.AutomaticAuthenticate = true; - // option.AuthenticationScheme = Constants.ApplicationAuthenticationSheme; - // option.Cookies.ApplicationCookieAuthenticationScheme = Constants.ApplicationAuthenticationSheme; - // option.Cookies.TwoFactorRememberMeCookie.ExpireTimeSpan = TimeSpan.FromDays(30); - // option.Cookies.TwoFactorRememberMeCookie.DataProtectionProvider = protector; - //option.Cookies.ExternalCookieAuthenticationScheme = Constants.ExternalAuthenticationSheme; - // option.Cookies.ExternalCookie.AutomaticAuthenticate = true; - //option.Cookies.ExternalCookie.AuthenticationScheme = Constants.ExternalAuthenticationSheme; - // option.Cookies.ExternalCookie.DataProtectionProvider = protector; + // option.Cookies.ApplicationCookieAuthenticationScheme = Constants.ApplicationAuthenticationSheme; + option.Cookies.ApplicationCookie.LoginPath = "/signin"; + // option.Cookies.ApplicationCookie.AuthenticationScheme = Constants.ApplicationAuthenticationSheme; + /* + option.Cookies.ApplicationCookie.DataProtectionProvider = protector; + option.Cookies.ApplicationCookie.LoginPath = new PathString(Constants.LoginPath.Substring(1)); + option.Cookies.ApplicationCookie.AccessDeniedPath = new PathString(Constants.AccessDeniedPath.Substring(1)); + option.Cookies.ApplicationCookie.AutomaticAuthenticate = true; + option.Cookies.ApplicationCookie.AuthenticationScheme = Constants.ApplicationAuthenticationSheme; + option.Cookies.ApplicationCookieAuthenticationScheme = Constants.ApplicationAuthenticationSheme; + option.Cookies.TwoFactorRememberMeCookie.ExpireTimeSpan = TimeSpan.FromDays(30); + option.Cookies.TwoFactorRememberMeCookie.DataProtectionProvider = protector; + option.Cookies.ExternalCookieAuthenticationScheme = Constants.ExternalAuthenticationSheme; + option.Cookies.ExternalCookie.AutomaticAuthenticate = true; + option.Cookies.ExternalCookie.AuthenticationScheme = Constants.ExternalAuthenticationSheme; + option.Cookies.ExternalCookie.DataProtectionProvider = protector; + */ } ).AddEntityFrameworkStores() .AddTokenProvider>(Constants.EMailFactor) .AddTokenProvider(Constants.DefaultFactor) ; - + } private void ConfigureOAuthApp(IApplicationBuilder app) { - app.UseIdentity(); // External authentication shared cookie: app.UseCookieAuthentication(options => { - //options.AuthenticationScheme = Constants.ExternalAuthenticationSheme; + ExternalCookieAppOptions = options; + options.AuthenticationScheme = Constants.ExternalAuthenticationSheme; options.AutomaticAuthenticate = true; options.ExpireTimeSpan = TimeSpan.FromMinutes(5); options.LoginPath = new PathString(Constants.LoginPath.Substring(1)); options.AccessDeniedPath = new PathString(Constants.AccessDeniedPath.Substring(1)); - options.AuthenticationScheme = Constants.ApplicationAuthenticationSheme; }); + app.UseOAuthAuthorizationServer( + + options => + { + OAuthServerAppOptions = options; + options.AuthorizeEndpointPath = new PathString(Constants.AuthorizePath.Substring(1)); + options.TokenEndpointPath = new PathString(Constants.TokenPath.Substring(1)); + options.ApplicationCanDisplayErrors = true; + options.AllowInsecureHttp = true; + options.AuthenticationScheme = OAuthDefaults.AuthenticationType; + + options.Provider = new OAuthAuthorizationServerProvider + { + OnValidateClientRedirectUri = ValidateClientRedirectUri, + OnValidateClientAuthentication = ValidateClientAuthentication, + OnGrantResourceOwnerCredentials = GrantResourceOwnerCredentials, + OnGrantClientCredentials = GrantClientCredetails + }; + + options.AuthorizationCodeProvider = new AuthenticationTokenProvider + { + OnCreate = CreateAuthenticationCode, + OnReceive = ReceiveAuthenticationCode, + }; + + options.RefreshTokenProvider = new AuthenticationTokenProvider + { + OnCreate = CreateRefreshToken, + OnReceive = ReceiveRefreshToken, + }; + + options.AutomaticAuthenticate = true; + options.AutomaticChallenge = true; + } + ); + + app.UseIdentity(); + var gvents = new OAuthEvents(); - var googleOptions = new YavscGoogleOptions + YavscGoogleAppOptions = new YavscGoogleOptions { ClientId = Configuration["Authentication:Google:ClientId"], ClientSecret = Configuration["Authentication:Google:ClientSecret"], @@ -115,94 +169,19 @@ namespace Yavsc } } }; - googleOptions.Scope.Add("https://www.googleapis.com/auth/calendar"); - app.UseMiddleware(googleOptions); + YavscGoogleAppOptions.Scope.Add("https://www.googleapis.com/auth/calendar"); + app.UseMiddleware(YavscGoogleAppOptions); // Facebook app.UseFacebookAuthentication(options => { + FacebookAppOptions = options; options.AppId = Configuration["Authentication:Facebook:AppId"]; options.AppSecret = Configuration["Authentication:Facebook:AppSecret"]; options.Scope.Add("email"); options.UserInformationEndpoint = "https://graph.facebook.com/v2.5/me?fields=id,name,email,first_name,last_name"; }); - /* Generic OAuth (here GitHub): options.Notifications = new OAuthAuthenticationNotifications - { - OnGetUserInformationAsync = async context => - { - // Get the GitHub user - HttpRequestMessage userRequest = new HttpRequestMessage(HttpMethod.Get, context.Options.UserInformationEndpoint); - userRequest.Headers.Authorization = new AuthenticationHeaderValue("Bearer", context.AccessToken); - userRequest.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); - HttpResponseMessage userResponse = await context.Backchannel.SendAsync(userRequest, context.HttpContext.RequestAborted); - userResponse.EnsureSuccessStatusCode(); - var text = await userResponse.Content.ReadAsStringAsync(); - JObject user = JObject.Parse(text); - - var identity = new ClaimsIdentity( - context.Options.AuthenticationType, - ClaimsIdentity.DefaultNameClaimType, - ClaimsIdentity.DefaultRoleClaimType); - - JToken value; - var id = user.TryGetValue("id", out value) ? value.ToString() : null; - if (!string.IsNullOrEmpty(id)) - { - identity.AddClaim(new Claim(ClaimTypes.NameIdentifier, id, ClaimValueTypes.String, context.Options.AuthenticationType)); - } - var userName = user.TryGetValue("login", out value) ? value.ToString() : null; - if (!string.IsNullOrEmpty(userName)) - { - identity.AddClaim(new Claim(ClaimsIdentity.DefaultNameClaimType, userName, ClaimValueTypes.String, context.Options.AuthenticationType)); - } - var name = user.TryGetValue("name", out value) ? value.ToString() : null; - if (!string.IsNullOrEmpty(name)) - { - identity.AddClaim(new Claim("urn:github:name", name, ClaimValueTypes.String, context.Options.AuthenticationType)); - } - var link = user.TryGetValue("url", out value) ? value.ToString() : null; - if (!string.IsNullOrEmpty(link)) - { - identity.AddClaim(new Claim("urn:github:url", link, ClaimValueTypes.String, context.Options.AuthenticationType)); - } - - context.Identity = identity; - } - }; */ - - app.UseOAuthAuthorizationServer( - options => - { - options.AuthorizeEndpointPath = new PathString(Constants.AuthorizePath.Substring(1)); - options.TokenEndpointPath = new PathString(Constants.TokenPath.Substring(1)); - options.ApplicationCanDisplayErrors = true; - options.AllowInsecureHttp = true; - - options.Provider = new OAuthAuthorizationServerProvider - { - OnValidateClientRedirectUri = ValidateClientRedirectUri, - OnValidateClientAuthentication = ValidateClientAuthentication, - OnGrantResourceOwnerCredentials = GrantResourceOwnerCredentials, - OnGrantClientCredentials = GrantClientCredetails - }; - - options.AuthorizationCodeProvider = new AuthenticationTokenProvider - { - OnCreate = CreateAuthenticationCode, - OnReceive = ReceiveAuthenticationCode, - }; - - options.RefreshTokenProvider = new AuthenticationTokenProvider - { - OnCreate = CreateRefreshToken, - OnReceive = ReceiveRefreshToken, - }; - - options.AutomaticAuthenticate = true; - options.AutomaticChallenge = true; - } - ); } } } diff --git a/Yavsc/Startup/Startup.OAuthHelpers.cs b/Yavsc/Startup/Startup.OAuthHelpers.cs index 305995b0..9c0f44b0 100644 --- a/Yavsc/Startup/Startup.OAuthHelpers.cs +++ b/Yavsc/Startup/Startup.OAuthHelpers.cs @@ -6,23 +6,25 @@ using System.Security.Principal; using System.Threading.Tasks; using Microsoft.Extensions.Logging; using OAuth.AspNet.AuthServer; +using Yavsc.Helpers; using Yavsc.Models; +using Yavsc.Models.Auth; namespace Yavsc { public partial class Startup { - private Application GetApplication(string clientId) + private Client GetApplication(string clientId) { var dbContext = new ApplicationDbContext(); - var app = dbContext.Applications.FirstOrDefault(x=>x.ApplicationID == clientId); + var app = dbContext.Applications.FirstOrDefault(x => x.Id == clientId); return app; } private readonly ConcurrentDictionary _authenticationCodes = new ConcurrentDictionary(StringComparer.Ordinal); private Task ValidateClientRedirectUri(OAuthValidateClientRedirectUriContext context) { - if (context==null) throw new InvalidOperationException("context == null"); + if (context == null) throw new InvalidOperationException("context == null"); var app = GetApplication(context.ClientId); if (app == null) return Task.FromResult(0); Startup.logger.LogInformation($"ValidateClientRedirectUri: Validated ({app.RedirectUri})"); @@ -32,16 +34,40 @@ namespace Yavsc private Task ValidateClientAuthentication(OAuthValidateClientAuthenticationContext context) { - string clientId,clientSecret; + string clientId, clientSecret; if (context.TryGetBasicCredentials(out clientId, out clientSecret) || context.TryGetFormCredentials(out clientId, out clientSecret)) { - var app = GetApplication(clientId); - if (app != null && app.Secret == clientSecret) + var client = GetApplication(clientId); + if (client.Type == ApplicationTypes.NativeConfidential) { - Startup.logger.LogInformation($"ValidateClientAuthentication: Validated ({clientId})"); + if (string.IsNullOrWhiteSpace(clientSecret)) + { + context.SetError("invalid_clientId", "Client secret should be sent."); + return Task.FromResult(null); + } + else + { + if (client.Secret != Helper.GetHash(clientSecret)) + { + context.SetError("invalid_clientId", "Client secret is invalid."); + return Task.FromResult(null); + } + } + } + + if (!client.Active) + { + context.SetError("invalid_clientId", "Client is inactive."); + return Task.FromResult(null); + } + + if (client != null && client.Secret == clientSecret) + { + logger.LogInformation($"\\o/ ValidateClientAuthentication: Validated ({clientId})"); context.Validated(); - } else Startup.logger.LogInformation($"ValidateClientAuthentication: KO ({clientId})"); + } + else Startup.logger.LogInformation($"ValidateClientAuthentication: KO ({clientId})"); } else Startup.logger.LogInformation($"ValidateClientAuthentication: nor Basic neither Form credential found"); return Task.FromResult(0); @@ -49,7 +75,12 @@ namespace Yavsc private Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context) { + logger.LogWarning($"GrantResourceOwnerCredentials task ... {context.UserName}"); + + // var user = ValidateUser(context.UserName, context.Password) + ClaimsPrincipal principal = new ClaimsPrincipal(new ClaimsIdentity(new GenericIdentity(context.UserName, OAuthDefaults.AuthenticationType), context.Scope.Select(x => new Claim("urn:oauth:scope", x)))); + // TODO set a NameIdentifier, roles and scopes claims context.Validated(principal); @@ -67,7 +98,7 @@ namespace Yavsc private void CreateAuthenticationCode(AuthenticationTokenCreateContext context) { - Startup.logger.LogInformation("CreateAuthenticationCode"); + logger.LogInformation("CreateAuthenticationCode"); context.SetToken(Guid.NewGuid().ToString("n") + Guid.NewGuid().ToString("n")); _authenticationCodes[context.Token] = context.SerializeTicket(); } @@ -78,20 +109,21 @@ namespace Yavsc if (_authenticationCodes.TryRemove(context.Token, out value)) { context.DeserializeTicket(value); + logger.LogInformation("ReceiveAuthenticationCode: Success"); } } private void CreateRefreshToken(AuthenticationTokenCreateContext context) { var uid = context.Ticket.Principal.GetUserId(); - Startup.logger.LogInformation($"CreateRefreshToken for {uid}"); + logger.LogInformation($"CreateRefreshToken for {uid}"); context.SetToken(context.SerializeTicket()); } private void ReceiveRefreshToken(AuthenticationTokenReceiveContext context) { var uid = context.Ticket.Principal.GetUserId(); - Startup.logger.LogInformation($"ReceiveRefreshToken for {uid}"); + logger.LogInformation($"ReceiveRefreshToken for {uid}"); context.DeserializeTicket(context.Token); } } diff --git a/Yavsc/Startup/Startup.cs b/Yavsc/Startup/Startup.cs index 48e11a24..63703b64 100755 --- a/Yavsc/Startup/Startup.cs +++ b/Yavsc/Startup/Startup.cs @@ -8,9 +8,6 @@ using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Builder; using Microsoft.AspNet.Diagnostics; using Microsoft.AspNet.Hosting; -using Microsoft.AspNet.Http; -using Microsoft.AspNet.Identity; -using Microsoft.AspNet.Identity.EntityFramework; using Microsoft.AspNet.Localization; using Microsoft.AspNet.Mvc; using Microsoft.AspNet.Mvc.Filters; @@ -22,7 +19,6 @@ using Microsoft.Extensions.Logging; using Microsoft.Extensions.OptionsModel; using Microsoft.Extensions.PlatformAbstractions; using Microsoft.Net.Http.Headers; -using Yavsc.Auth; using Yavsc.Formatters; using Yavsc.Models; using Yavsc.Services; diff --git a/Yavsc/ViewModels/Auth/AuthorisationView.cs b/Yavsc/ViewModels/Auth/AuthorisationView.cs index 4428ebe7..5cf0dc8e 100644 --- a/Yavsc/ViewModels/Auth/AuthorisationView.cs +++ b/Yavsc/ViewModels/Auth/AuthorisationView.cs @@ -1,12 +1,17 @@ using System.Collections.Generic; +using Microsoft.Extensions.Primitives; -namespace Yavsc +namespace Yavsc.Models.Auth { public class AuthorisationView {  - public Application Application { get; set; } - public IEnumerable Scopes { get; set; } + public Scope[] Scopes { get; set; } public string RedirectUrl { get; set; } public string Message { get; set; } + public string ClientId {get; set; } + public string State {get; set; } + public string ResponseType { get; set; } + + public IDictionary QueryStringComponents { get; set; } } } \ No newline at end of file diff --git a/Yavsc/Views/Application/Create.cshtml b/Yavsc/Views/Client/Create.cshtml similarity index 59% rename from Yavsc/Views/Application/Create.cshtml rename to Yavsc/Views/Client/Create.cshtml index 7ac14317..b9f59d06 100644 --- a/Yavsc/Views/Application/Create.cshtml +++ b/Yavsc/Views/Client/Create.cshtml @@ -1,4 +1,4 @@ -@model Yavsc.Application +@model Yavsc.Models.Auth.Client @{ ViewData["Title"] = "Create"; @@ -8,9 +8,17 @@
-

Application

+

Client


+
+
+
+ + +
+
+
@@ -32,6 +40,13 @@
+
+ +
+ + +
+
@@ -39,6 +54,16 @@
+
+ +
+ + +
+
diff --git a/Yavsc/Views/Application/Delete.cshtml b/Yavsc/Views/Client/Delete.cshtml similarity index 63% rename from Yavsc/Views/Application/Delete.cshtml rename to Yavsc/Views/Client/Delete.cshtml index 9f13eb84..0f0dc8aa 100644 --- a/Yavsc/Views/Application/Delete.cshtml +++ b/Yavsc/Views/Client/Delete.cshtml @@ -1,4 +1,4 @@ -@model Yavsc.Application +@model Yavsc.Models.Auth.Client @{ ViewData["Title"] = "Delete"; @@ -8,9 +8,15 @@

Are you sure you want to delete this?

-

Application

+

Client


+
+ @Html.DisplayNameFor(model => model.Active) +
+
+ @Html.DisplayFor(model => model.Active) +
@Html.DisplayNameFor(model => model.DisplayName)
@@ -29,12 +35,24 @@
@Html.DisplayFor(model => model.RedirectUri)
+
+ @Html.DisplayNameFor(model => model.RefreshTokenLifeTime) +
+
+ @Html.DisplayFor(model => model.RefreshTokenLifeTime) +
@Html.DisplayNameFor(model => model.Secret)
@Html.DisplayFor(model => model.Secret)
+
+ @Html.DisplayNameFor(model => model.Type) +
+
+ @Html.DisplayFor(model => model.Type) +
diff --git a/Yavsc/Views/Application/Details.cshtml b/Yavsc/Views/Client/Details.cshtml similarity index 53% rename from Yavsc/Views/Application/Details.cshtml rename to Yavsc/Views/Client/Details.cshtml index 905a2416..d4905039 100644 --- a/Yavsc/Views/Application/Details.cshtml +++ b/Yavsc/Views/Client/Details.cshtml @@ -1,4 +1,4 @@ -@model Yavsc.Application +@model Yavsc.Models.Auth.Client @{ ViewData["Title"] = "Details"; @@ -7,9 +7,21 @@

Details

-

Application

+

Client


+
+ @Html.DisplayNameFor(model => model.Id) +
+
+ @Html.DisplayFor(model => model.Id) +
+
+ @Html.DisplayNameFor(model => model.Active) +
+
+ @Html.DisplayFor(model => model.Active) +
@Html.DisplayNameFor(model => model.DisplayName)
@@ -29,10 +41,10 @@ @Html.DisplayFor(model => model.RedirectUri)
- @Html.DisplayNameFor(model => model.ApplicationID) + @Html.DisplayNameFor(model => model.RefreshTokenLifeTime)
- @Html.DisplayFor(model => model.ApplicationID) + @Html.DisplayFor(model => model.RefreshTokenLifeTime)
@Html.DisplayNameFor(model => model.Secret) @@ -40,9 +52,15 @@
@Html.DisplayFor(model => model.Secret)
+
+ @Html.DisplayNameFor(model => model.Type) +
+
+ @Html.DisplayFor(model => model.Type) +

- Edit | + Edit | Back to List

diff --git a/Yavsc/Views/Application/Edit.cshtml b/Yavsc/Views/Client/Edit.cshtml similarity index 61% rename from Yavsc/Views/Application/Edit.cshtml rename to Yavsc/Views/Client/Edit.cshtml index a54fab01..19857451 100644 --- a/Yavsc/Views/Application/Edit.cshtml +++ b/Yavsc/Views/Client/Edit.cshtml @@ -1,4 +1,4 @@ -@model Yavsc.Application +@model Yavsc.Models.Auth.Client @{ ViewData["Title"] = "Edit"; @@ -8,10 +8,18 @@
-

Application

+

Client


- + +
+
+
+ + +
+
+
@@ -33,6 +41,13 @@
+
+ +
+ + +
+
@@ -40,6 +55,13 @@
+
+ +
+ + +
+
diff --git a/Yavsc/Views/Application/Index.cshtml b/Yavsc/Views/Client/Index.cshtml similarity index 56% rename from Yavsc/Views/Application/Index.cshtml rename to Yavsc/Views/Client/Index.cshtml index 33bc002c..e2f4e32f 100644 --- a/Yavsc/Views/Application/Index.cshtml +++ b/Yavsc/Views/Client/Index.cshtml @@ -1,4 +1,4 @@ -@model IEnumerable +@model IEnumerable @{ ViewData["Title"] = "Index"; @@ -12,7 +12,7 @@ + + @foreach (var item in Model) { + + } diff --git a/Yavsc/Views/OAuth/Authorize-new.cshtml b/Yavsc/Views/OAuth/Authorize-new.cshtml new file mode 100644 index 00000000..55ad9ac6 --- /dev/null +++ b/Yavsc/Views/OAuth/Authorize-new.cshtml @@ -0,0 +1,32 @@ +@using Microsoft.AspNet.Http.Authentication +@using Microsoft.AspNet.WebUtilities +@using System.Security.Claims +@using Microsoft.Extensions.Primitives +@model Yavsc.Models.Auth.AuthorisationView +@{ + ViewBag.Title = @SR["Authorize"]; +} +

Authorization Server

+

OAuth2 Authorize

+ +

Hello, @User.Identity.Name

+

@Model.Message

+

A third party application want to do the following on your behalf:

+
    + @foreach (var scope in Model.Scopes) + { +
  • @scope.Id: @scope.Description
  • + } +
+

+ + + +

+ @if (Model.QueryStringComponents!=null) { + @foreach (var key in Model.QueryStringComponents.Keys) { + @Html.Hidden(key,Model.QueryStringComponents[key]) + } + + } + diff --git a/Yavsc/Views/OAuth/Authorize.cshtml b/Yavsc/Views/OAuth/Authorize.cshtml index 57cc131f..7ca8b37f 100644 --- a/Yavsc/Views/OAuth/Authorize.cshtml +++ b/Yavsc/Views/OAuth/Authorize.cshtml @@ -1,32 +1,34 @@ -@using Microsoft.AspNet.Http.Authentication +@using Microsoft.AspNet.Http.Authentication @using Microsoft.AspNet.WebUtilities -@using System.Security.Claims +@using System.Security.Claims +@model Yavsc.Models.Auth.AuthorisationView @{ - AuthenticationManager authentication = Context.Authentication; - ClaimsPrincipal principal = authentication.AuthenticateAsync(Constants.ApplicationAuthenticationSheme).Result; - string[] scopes = QueryHelpers.ParseQuery(Context.Request.QueryString.Value)["scope"]; + ViewBag.Title = @SR["Authorize"]; } - - - - Authorize - - -

Authorization Server

-

OAuth2 Authorize

- -

Hello, @principal.Identity.Name

-

A third party application want to do the following on your behalf:

-
    - @foreach (var scope in scopes) +

    Authorization Server

    +

    OAuth2 Authorize

    + + +

    Hello, @User.Identity.Name

    +

    @Model.Message

    +

    A third party application want to do the following on your behalf:

    +
      + @if (Model.Scopes!=null) { + @foreach (var scope in Model.Scopes) { -
    • @scope
    • - } -
    -

    - - -

    - - - \ No newline at end of file +
  • @scope.Id: @scope.Description
  • + } + } +
+

+ + + +

+ + \ No newline at end of file diff --git a/Yavsc/Views/Shared/Authorize.cshtml b/Yavsc/Views/Shared/Authorize.cshtml deleted file mode 100644 index b63dc7c6..00000000 --- a/Yavsc/Views/Shared/Authorize.cshtml +++ /dev/null @@ -1,22 +0,0 @@ - -@model AuthorisationView - -
-

Authorization @Application?.DisplayName

- -

@Model.Message

- -

Do you wanna grant @Model.Application.DisplayName an access to your resources? (scopes requested: @Model.Message.Scope)

- -
- @Html.AntiForgeryToken() - - @foreach (var scope in Model.Scopes) { -
  • @scope
  • - } - @Html.Hidden("ReturnUrl") - - - - -
    diff --git a/Yavsc/appsettings.json b/Yavsc/appsettings.json index 873cff4f..04c8b10c 100755 --- a/Yavsc/appsettings.json +++ b/Yavsc/appsettings.json @@ -45,5 +45,12 @@ }, "RSAParamFile": "RSA-Params.json", "ExpiresInHours": 168 + }, + "Authentication": { + "Google": { + "ApiKey": "[Your ApiKey]", + "ClientId" : "[Your ClientId]", + "ClientSecret": "[Your ClientSecret" + } } } diff --git a/Yavsc/project.json b/Yavsc/project.json index 00230b12..f90706c9 100755 --- a/Yavsc/project.json +++ b/Yavsc/project.json @@ -104,7 +104,8 @@ "Microsoft.AspNet.DataProtection.SystemWeb": "1.0.0-rc1-final", "Microsoft.AspNet.Authentication.JwtBearer": "1.0.0-rc1-final", "PayPalCoreSDK": "1.7.1", - "PayPalButtonManagerSDK": "2.10.109" + "PayPalButtonManagerSDK": "2.10.109", + "Microsoft.AspNet.Owin": "1.0.0-rc1-final" }, "commands": { "web": "Microsoft.AspNet.Server.Kestrel --server.urls http://*:5000", diff --git a/Yavsc/project.lock.json b/Yavsc/project.lock.json index 16bf37ee..13bf3e07 100644 --- a/Yavsc/project.lock.json +++ b/Yavsc/project.lock.json @@ -21,9 +21,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/EntityFramework.Commands.dll": {} @@ -48,7 +48,6 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Collections", "System.ComponentModel.DataAnnotations", @@ -65,7 +64,8 @@ "System.Resources.ResourceManager", "System.Runtime", "System.Runtime.Extensions", - "System.Threading" + "System.Threading", + "mscorlib" ], "compile": { "lib/dnx451/EntityFramework.Core.dll": {} @@ -81,9 +81,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/EntityFramework.MicrosoftSqlServer.dll": {} @@ -100,11 +100,11 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", "System.Data", - "System.Transactions" + "System.Transactions", + "mscorlib" ], "compile": { "lib/net451/EntityFramework.Relational.dll": {} @@ -120,13 +120,13 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.ComponentModel.DataAnnotations", "System.Core", "System.IO", "System.Text.Encoding", - "System.Threading.Tasks" + "System.Threading.Tasks", + "mscorlib" ], "compile": { "lib/dnx451/EntityFramework.Relational.Design.dll": {} @@ -143,9 +143,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/EntityFramework.Sqlite.dll": {} @@ -165,14 +165,14 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Collections", "System.Core", "System.Diagnostics.Contracts", "System.Linq.Expressions", "System.Reflection", - "System.Runtime" + "System.Runtime", + "mscorlib" ], "compile": { "lib/dnx451/EntityFramework7.Npgsql.dll": {} @@ -194,14 +194,14 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Collections", "System.Core", "System.Diagnostics.Contracts", "System.Linq.Expressions", "System.Reflection", - "System.Runtime" + "System.Runtime", + "mscorlib" ], "compile": { "lib/dnx451/EntityFramework7.Npgsql.Design.dll": {} @@ -214,16 +214,16 @@ "type": "package", "dependencies": { "Google.Apis.Core": "1.11.1", - "log4net": "2.0.3", - "Zlib.Portable.Signed": "1.11.0" + "Zlib.Portable.Signed": "1.11.0", + "log4net": "2.0.3" }, "compile": { - "lib/net45/Google.Apis.dll": {}, - "lib/net45/Google.Apis.PlatformServices.dll": {} + "lib/net45/Google.Apis.PlatformServices.dll": {}, + "lib/net45/Google.Apis.dll": {} }, "runtime": { - "lib/net45/Google.Apis.dll": {}, - "lib/net45/Google.Apis.PlatformServices.dll": {} + "lib/net45/Google.Apis.PlatformServices.dll": {}, + "lib/net45/Google.Apis.dll": {} } }, "Google.Apis.Core/1.11.1": { @@ -301,9 +301,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Antiforgery.dll": {} @@ -324,10 +324,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Net.Http" + "System.Net.Http", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Authentication.dll": {} @@ -345,9 +345,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Authentication.Cookies.dll": {} @@ -364,9 +364,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Authentication.Facebook.dll": {} @@ -383,10 +383,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Net.Http" + "System.Net.Http", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.AspNet.Authentication.JwtBearer.dll": {} @@ -403,10 +403,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Net.Http" + "System.Net.Http", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Authentication.OAuth.dll": {} @@ -423,10 +423,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Net.Http" + "System.Net.Http", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.AspNet.Authentication.OpenIdConnect.dll": {} @@ -442,10 +442,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Net.Http" + "System.Net.Http", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Authentication.Twitter.dll": {} @@ -463,9 +463,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Authorization.dll": {} @@ -484,9 +484,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Cors.dll": {} @@ -499,9 +499,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Cryptography.Internal.dll": {} @@ -517,9 +517,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.dll": {} @@ -539,13 +539,13 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", "System.IO", "System.Security", "System.Xml", - "System.Xml.Linq" + "System.Xml.Linq", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.DataProtection.dll": {} @@ -561,9 +561,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.dll": {} @@ -580,12 +580,12 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Configuration", "System.Core", "System.Security", - "System.Web" + "System.Web", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.dll": {} @@ -609,10 +609,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Runtime" + "System.Runtime", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Diagnostics.dll": {} @@ -625,9 +625,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.dll": {} @@ -644,11 +644,11 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Configuration", "System.Core", - "System.Threading.Tasks" + "System.Threading.Tasks", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Diagnostics.Entity.dll": {} @@ -664,9 +664,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.dll": {} @@ -682,9 +682,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.FileProviders.Physical.dll": {} @@ -713,10 +713,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Runtime" + "System.Runtime", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.AspNet.Hosting.dll": {} @@ -733,9 +733,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Hosting.Abstractions.dll": {} @@ -752,9 +752,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.dll": {} @@ -770,9 +770,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Html.Abstractions.dll": {} @@ -790,9 +790,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Http.dll": {} @@ -809,9 +809,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Http.Abstractions.dll": {} @@ -829,9 +829,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Http.Extensions.dll": {} @@ -847,9 +847,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Http.Features.dll": {} @@ -867,9 +867,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Identity.dll": {} @@ -886,11 +886,11 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", "System.Runtime", - "System.Threading.Tasks" + "System.Threading.Tasks", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Identity.EntityFramework.dll": {} @@ -907,9 +907,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.IISPlatformHandler.dll": {} @@ -925,9 +925,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.JsonPatch.dll": {} @@ -945,9 +945,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Localization.dll": {} @@ -971,9 +971,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.dll": {} @@ -989,9 +989,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.Abstractions.dll": {} @@ -1007,9 +1007,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.dll": {} @@ -1032,10 +1032,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Runtime" + "System.Runtime", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.Core.dll": {} @@ -1052,9 +1052,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.Cors.dll": {} @@ -1071,10 +1071,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.ComponentModel.DataAnnotations", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.dll": {} @@ -1092,9 +1092,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.dll": {} @@ -1113,9 +1113,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.Localization.dll": {} @@ -1136,14 +1136,14 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Collections", "System.Core", "System.IO", "System.Runtime", "System.Text.Encoding", - "System.Threading.Tasks" + "System.Threading.Tasks", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.Razor.dll": {} @@ -1162,9 +1162,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.dll": {} @@ -1182,9 +1182,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.dll": {} @@ -1205,9 +1205,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.dll": {} @@ -1216,13 +1216,31 @@ "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.dll": {} } }, + "Microsoft.AspNet.Owin/1.0.0-rc1-final": { + "type": "package", + "dependencies": { + "Microsoft.AspNet.Http": "1.0.0-rc1-final" + }, + "frameworkAssemblies": [ + "Microsoft.CSharp", + "System", + "System.Core", + "mscorlib" + ], + "compile": { + "lib/net451/Microsoft.AspNet.Owin.dll": {} + }, + "runtime": { + "lib/net451/Microsoft.AspNet.Owin.dll": {} + } + }, "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces/1.0.0-rc1-final": { "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.dll": {} @@ -1235,9 +1253,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Razor.dll": {} @@ -1254,11 +1272,11 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", "System.Xml", - "System.Xml.Linq" + "System.Xml.Linq", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Razor.Runtime.dll": {} @@ -1275,10 +1293,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Runtime" + "System.Runtime", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.dll": {} @@ -1296,9 +1314,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Routing.dll": {} @@ -1316,15 +1334,33 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.AspNet.Server.Kestrel.dll": {} }, "runtime": { "lib/dnx451/Microsoft.AspNet.Server.Kestrel.dll": {} + }, + "runtimeTargets": { + "runtimes/osx/native/libuv.dylib": { + "assetType": "native", + "rid": "osx" + }, + "runtimes/win10-arm/native/libuv.dll": { + "assetType": "native", + "rid": "win10-arm" + }, + "runtimes/win7-x64/native/libuv.dll": { + "assetType": "native", + "rid": "win7-x64" + }, + "runtimes/win7-x86/native/libuv.dll": { + "assetType": "native", + "rid": "win7-x86" + } } }, "Microsoft.AspNet.Server.WebListener/1.0.0-rc1-final": { @@ -1336,9 +1372,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.AspNet.Server.WebListener.dll": {} @@ -1357,9 +1393,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Session.dll": {} @@ -1400,9 +1436,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.StaticFiles.dll": {} @@ -1419,9 +1455,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.Tooling.Razor.dll": {} @@ -1447,9 +1483,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.WebSockets.Protocol.dll": {} @@ -1466,9 +1502,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.WebSockets.Server.dll": {} @@ -1485,9 +1521,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.AspNet.WebUtilities.dll": {} @@ -1538,16 +1574,26 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Data" + "System.Data", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Data.Sqlite.dll": {} }, "runtime": { "lib/net451/Microsoft.Data.Sqlite.dll": {} + }, + "runtimeTargets": { + "runtimes/win7-x64/native/sqlite3.dll": { + "assetType": "native", + "rid": "win7-x64" + }, + "runtimes/win7-x86/native/sqlite3.dll": { + "assetType": "native", + "rid": "win7-x86" + } } }, "Microsoft.Dnx.Compilation.Abstractions/1.0.0-rc1-final": { @@ -1557,9 +1603,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Dnx.Compilation.Abstractions.dll": {} @@ -1576,9 +1622,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.dll": {} @@ -1595,11 +1641,11 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", "System.IO", - "System.Runtime" + "System.Runtime", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.dll": {} @@ -1615,9 +1661,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Caching.Abstractions.dll": {} @@ -1635,9 +1681,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Caching.Memory.dll": {} @@ -1656,9 +1702,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Extensions.CodeGeneration.dll": {} @@ -1678,9 +1724,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Extensions.CodeGeneration.Core.dll": {} @@ -1699,10 +1745,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Text.Encoding" + "System.Text.Encoding", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.dll": {} @@ -1719,13 +1765,13 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", "System.IO", "System.Runtime", "System.Text.Encoding", - "System.Threading.Tasks" + "System.Threading.Tasks", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Extensions.CodeGeneration.Templating.dll": {} @@ -1744,9 +1790,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.dll": {} @@ -1762,9 +1808,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.dll": {} @@ -1780,9 +1826,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.Abstractions.dll": {} @@ -1798,9 +1844,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.Binder.dll": {} @@ -1816,9 +1862,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.CommandLine.dll": {} @@ -1834,9 +1880,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} @@ -1852,9 +1898,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.dll": {} @@ -1872,9 +1918,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.FileProviderExtensions.dll": {} @@ -1892,9 +1938,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.Json.dll": {} @@ -1910,9 +1956,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.dll": {} @@ -1928,9 +1974,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.DependencyInjection.dll": {} @@ -1943,9 +1989,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {} @@ -1958,9 +2004,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.FileSystemGlobbing.dll": {} @@ -1973,9 +2019,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.dll": {} @@ -1994,9 +2040,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Localization.dll": {} @@ -2009,9 +2055,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Localization.Abstractions.dll": {} @@ -2028,10 +2074,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Collections.Concurrent", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Logging.dll": {} @@ -2044,9 +2090,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Logging.Abstractions.dll": {} @@ -2064,9 +2110,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Logging.Console.dll": {} @@ -2082,9 +2128,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Logging.Debug.dll": {} @@ -2097,9 +2143,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.MemoryPool.dll": {} @@ -2120,9 +2166,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.OptionsModel.dll": {} @@ -2135,9 +2181,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.PlatformAbstractions.dll": {} @@ -2150,9 +2196,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.Primitives.dll": {} @@ -2170,9 +2216,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.WebEncoders.dll": {} @@ -2185,9 +2231,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Extensions.WebEncoders.Core.dll": {} @@ -2203,9 +2249,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.Configuration.dll": {} @@ -2218,9 +2264,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.Configuration.Abstractions.dll": {} @@ -2236,9 +2282,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.Configuration.Binder.dll": {} @@ -2254,9 +2300,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.Configuration.FileExtensions.dll": {} @@ -2274,9 +2320,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.Configuration.Json.dll": {} @@ -2293,9 +2339,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.ConfigurationModel.dll": {} @@ -2308,9 +2354,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.ConfigurationModel.Interfaces.dll": {} @@ -2327,9 +2373,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.ConfigurationModel.Json.dll": {} @@ -2342,9 +2388,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/dnx451/Microsoft.Framework.Runtime.Interfaces.dll": {} @@ -2357,9 +2403,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.IdentityModel.Logging.dll": {} @@ -2375,10 +2421,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Net.Http" + "System.Net.Http", + "mscorlib" ], "compile": { "lib/net451/Microsoft.IdentityModel.Protocols.dll": {} @@ -2394,9 +2440,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": {} @@ -2409,9 +2455,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Net.Http.Headers.dll": {} @@ -2429,9 +2475,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Net.Http.Server.dll": {} @@ -2444,9 +2490,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/Microsoft.Net.WebSockets.dll": {} @@ -2528,9 +2574,9 @@ "type": "package", "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net45/Npgsql.dll": {} @@ -2658,10 +2704,10 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", "System.Core", - "System.Xml" + "System.Xml", + "mscorlib" ], "compile": { "lib/net451/System.IdentityModel.Tokens.dll": {} @@ -2677,9 +2723,9 @@ }, "frameworkAssemblies": [ "Microsoft.CSharp", - "mscorlib", "System", - "System.Core" + "System.Core", + "mscorlib" ], "compile": { "lib/net451/System.IdentityModel.Tokens.Jwt.dll": {} @@ -2852,5733 +2898,31 @@ "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.dll": {} } } - }, - "DNX,Version=v4.5.1/debian.8-x86": { - "Antlr/3.4.1.9004": { - "type": "package", - "compile": { - "lib/Antlr3.Runtime.dll": {} - }, - "runtime": { - "lib/Antlr3.Runtime.dll": {} - } - }, - "EntityFramework.Commands/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational.Design": "7.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/EntityFramework.Commands.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework.Commands.dll": {} - } - }, - "EntityFramework.Core/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Ix-Async": "1.2.5", - "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Remotion.Linq": "2.0.1", - "System.Collections.Immutable": "1.1.36" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.ComponentModel.DataAnnotations", - "System.Core", - "System.Diagnostics.Debug", - "System.Diagnostics.Tools", - "System.Globalization", - "System.Linq", - "System.Linq.Expressions", - "System.Linq.Queryable", - "System.ObjectModel", - "System.Reflection", - "System.Reflection.Extensions", - "System.Resources.ResourceManager", - "System.Runtime", - "System.Runtime.Extensions", - "System.Threading" - ], - "compile": { - "lib/dnx451/EntityFramework.Core.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework.Core.dll": {} - } - }, - "EntityFramework.MicrosoftSqlServer/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/EntityFramework.MicrosoftSqlServer.dll": {} - }, - "runtime": { - "lib/net451/EntityFramework.MicrosoftSqlServer.dll": {} - } - }, - "EntityFramework.Relational/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Data", - "System.Transactions" - ], - "compile": { - "lib/net451/EntityFramework.Relational.dll": {} - }, - "runtime": { - "lib/net451/EntityFramework.Relational.dll": {} - } - }, - "EntityFramework.Relational.Design/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.ComponentModel.DataAnnotations", - "System.Core", - "System.IO", - "System.Text.Encoding", - "System.Threading.Tasks" - ], - "compile": { - "lib/dnx451/EntityFramework.Relational.Design.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework.Relational.Design.dll": {} - } - }, - "EntityFramework.Sqlite/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.Data.Sqlite": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/EntityFramework.Sqlite.dll": {} - }, - "runtime": { - "lib/net451/EntityFramework.Sqlite.dll": {} - } - }, - "EntityFramework7.Npgsql/3.1.0-rc1-3": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Npgsql": "3.1.0-alpha6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.Core", - "System.Diagnostics.Contracts", - "System.Linq.Expressions", - "System.Reflection", - "System.Runtime" - ], - "compile": { - "lib/dnx451/EntityFramework7.Npgsql.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework7.Npgsql.dll": {} - } - }, - "EntityFramework7.Npgsql.Design/3.1.0-rc1-5": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "EntityFramework.Relational": "7.0.0-rc1-final", - "EntityFramework.Relational.Design": "7.0.0-rc1-final", - "EntityFramework7.Npgsql": "3.1.0-rc1-3", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Npgsql": "3.1.0-alpha6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.Core", - "System.Diagnostics.Contracts", - "System.Linq.Expressions", - "System.Reflection", - "System.Runtime" - ], - "compile": { - "lib/dnx451/EntityFramework7.Npgsql.Design.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework7.Npgsql.Design.dll": {} - } - }, - "Google.Apis/1.11.1": { - "type": "package", - "dependencies": { - "Google.Apis.Core": "1.11.1", - "log4net": "2.0.3", - "Zlib.Portable.Signed": "1.11.0" - }, - "compile": { - "lib/net45/Google.Apis.dll": {}, - "lib/net45/Google.Apis.PlatformServices.dll": {} - }, - "runtime": { - "lib/net45/Google.Apis.dll": {}, - "lib/net45/Google.Apis.PlatformServices.dll": {} - } - }, - "Google.Apis.Core/1.11.1": { - "type": "package", - "dependencies": { - "Newtonsoft.Json": "7.0.1" - }, - "compile": { - "lib/net45/Google.Apis.Core.dll": {} - }, - "runtime": { - "lib/net45/Google.Apis.Core.dll": {} - } - }, - "Ix-Async/1.2.5": { - "type": "package", - "frameworkAssemblies": [ - "System", - "System.Core" - ], - "compile": { - "lib/net45/System.Interactive.Async.dll": {} - }, - "runtime": { - "lib/net45/System.Interactive.Async.dll": {} - } - }, - "jQuery/1.6.4": { - "type": "package" - }, - "log4net/2.0.3": { - "type": "package", - "compile": { - "lib/net40-full/log4net.dll": {} - }, - "runtime": { - "lib/net40-full/log4net.dll": {} - } - }, - "MailKit/1.3.0-beta7": { - "type": "package", - "dependencies": { - "MimeKit": "1.3.0-beta7" - }, - "frameworkAssemblies": [ - "System", - "System.Core", - "System.Data" - ], - "compile": { - "lib/net451/MailKit.dll": {} - }, - "runtime": { - "lib/net451/MailKit.dll": {} - } - }, - "MarkdownDeep-av.NET/1.5.2": { - "type": "package", - "compile": { - "lib/net451/MarkdownDeep.dll": {} - }, - "runtime": { - "lib/net451/MarkdownDeep.dll": {} - } - }, - "Microsoft.AspNet.Antiforgery/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.DataProtection": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebUtilities": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Antiforgery.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Antiforgery.dll": {} - } - }, - "Microsoft.AspNet.Authentication/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.DataProtection": "1.0.0-rc1-final", - "Microsoft.AspNet.Http": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.dll": {} - } - }, - "Microsoft.AspNet.Authentication.Cookies/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.Cookies.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.Cookies.dll": {} - } - }, - "Microsoft.AspNet.Authentication.Facebook/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication.OAuth": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.Facebook.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.Facebook.dll": {} - } - }, - "Microsoft.AspNet.Authentication.JwtBearer/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "2.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Authentication.JwtBearer.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Authentication.JwtBearer.dll": {} - } - }, - "Microsoft.AspNet.Authentication.OAuth/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.OAuth.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.OAuth.dll": {} - } - }, - "Microsoft.AspNet.Authentication.OpenIdConnect/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "2.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Authentication.OpenIdConnect.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Authentication.OpenIdConnect.dll": {} - } - }, - "Microsoft.AspNet.Authentication.Twitter/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.Twitter.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.Twitter.dll": {} - } - }, - "Microsoft.AspNet.Authorization/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Features": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authorization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authorization.dll": {} - } - }, - "Microsoft.AspNet.Cors/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Cors.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Cors.dll": {} - } - }, - "Microsoft.AspNet.Cryptography.Internal/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Cryptography.Internal.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Cryptography.Internal.dll": {} - } - }, - "Microsoft.AspNet.Cryptography.KeyDerivation/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Cryptography.Internal": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.dll": {} - } - }, - "Microsoft.AspNet.DataProtection/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Cryptography.Internal": "1.0.0-rc1-final", - "Microsoft.AspNet.DataProtection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.IO", - "System.Security", - "System.Xml", - "System.Xml.Linq" - ], - "compile": { - "lib/net451/Microsoft.AspNet.DataProtection.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.DataProtection.dll": {} - } - }, - "Microsoft.AspNet.DataProtection.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.DataProtection.SystemWeb/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.DataProtection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Configuration", - "System.Core", - "System.Security", - "System.Web" - ], - "compile": { - "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.dll": {} - } - }, - "Microsoft.AspNet.Diagnostics/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Diagnostics.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebUtilities": "1.0.0-rc1-final", - "Microsoft.Dnx.Compilation.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Diagnostics.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Diagnostics.dll": {} - } - }, - "Microsoft.AspNet.Diagnostics.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Diagnostics.Entity/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Configuration", - "System.Core", - "System.Threading.Tasks" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Diagnostics.Entity.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Diagnostics.Entity.dll": {} - } - }, - "Microsoft.AspNet.FileProviders.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.FileProviders.Physical/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.FileProviders.Physical.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.FileProviders.Physical.dll": {} - } - }, - "Microsoft.AspNet.Hosting/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Server.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Http": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Dnx.Compilation.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.CommandLine": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Json": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Hosting.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Hosting.dll": {} - } - }, - "Microsoft.AspNet.Hosting.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Hosting.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Hosting.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Hosting.Server.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Features": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Html.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Html.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Html.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Http/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebUtilities": "1.0.0-rc1-final", - "Microsoft.Net.Http.Headers": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.dll": {} - } - }, - "Microsoft.AspNet.Http.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Features": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Http.Extensions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final", - "Microsoft.Net.Http.Headers": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.Extensions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.Extensions.dll": {} - } - }, - "Microsoft.AspNet.Http.Features/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.Features.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.Features.dll": {} - } - }, - "Microsoft.AspNet.Identity/3.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication.Cookies": "1.0.0-rc1-final", - "Microsoft.AspNet.Cryptography.KeyDerivation": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Identity.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Identity.dll": {} - } - }, - "Microsoft.AspNet.Identity.EntityFramework/3.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.AspNet.Identity": "3.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime", - "System.Threading.Tasks" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Identity.EntityFramework.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Identity.EntityFramework.dll": {} - } - }, - "Microsoft.AspNet.IISPlatformHandler/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.IISPlatformHandler.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.IISPlatformHandler.dll": {} - } - }, - "Microsoft.AspNet.JsonPatch/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.JsonPatch.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.JsonPatch.dll": {} - } - }, - "Microsoft.AspNet.Localization/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Globalization.CultureInfoCache": "1.0.0-rc1-final", - "Microsoft.Extensions.Localization.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Localization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Localization.dll": {} - } - }, - "Microsoft.AspNet.Mvc/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.ApiExplorer": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Cors": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.DataAnnotations": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Formatters.Json": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Localization": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Razor": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.ViewFeatures": "6.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Abstractions/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Routing": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Mvc.ApiExplorer/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Core/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authorization": "1.0.0-rc1-final", - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Abstractions": "6.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.MemoryPool": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Core.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Core.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Cors/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Cors": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Cors.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Cors.dll": {} - } - }, - "Microsoft.AspNet.Mvc.DataAnnotations/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", - "Microsoft.Extensions.Localization": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.ComponentModel.DataAnnotations", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Formatters.Json/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.JsonPatch": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Localization/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Localization": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Razor": "6.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.Localization": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Localization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Localization.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Razor/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Razor.Host": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.ViewFeatures": "6.0.0-rc1-final", - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces": "1.0.0-rc1-final", - "Microsoft.AspNet.Razor.Runtime.Precompilation": "4.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Common": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.Core", - "System.IO", - "System.Runtime", - "System.Text.Encoding", - "System.Threading.Tasks" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Razor.Host/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.AspNet.Razor.Runtime": "4.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.dll": {} - } - }, - "Microsoft.AspNet.Mvc.TagHelpers/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Razor": "6.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.FileSystemGlobbing": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.dll": {} - } - }, - "Microsoft.AspNet.Mvc.ViewFeatures/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Antiforgery": "1.0.0-rc1-final", - "Microsoft.AspNet.Diagnostics.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Html.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.DataAnnotations": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Formatters.Json": "6.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.dll": {} - } - }, - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.dll": {} - } - }, - "Microsoft.AspNet.Razor/4.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Razor.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Razor.dll": {} - } - }, - "Microsoft.AspNet.Razor.Runtime/4.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Html.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Razor": "4.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Xml", - "System.Xml.Linq" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.dll": {} - } - }, - "Microsoft.AspNet.Razor.Runtime.Precompilation/4.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Razor.Runtime": "4.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.dll": {} - } - }, - "Microsoft.AspNet.Routing/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Routing.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Routing.dll": {} - } - }, - "Microsoft.AspNet.Server.Kestrel/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Hosting": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "System.Numerics.Vectors": "4.1.1-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Server.Kestrel.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Server.Kestrel.dll": {} - } - }, - "Microsoft.AspNet.Server.WebListener/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Hosting": "1.0.0-rc1-final", - "Microsoft.Net.Http.Headers": "1.0.0-rc1-final", - "Microsoft.Net.Http.Server": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Server.WebListener.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Server.WebListener.dll": {} - } - }, - "Microsoft.AspNet.Session/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Session.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Session.dll": {} - } - }, - "Microsoft.AspNet.SignalR.Core/2.2.0": { - "type": "package", - "dependencies": { - "Microsoft.Owin": "2.1.0", - "Microsoft.Owin.Security": "2.1.0", - "Newtonsoft.Json": "6.0.4", - "Owin": "1.0.0" - }, - "compile": { - "lib/net45/Microsoft.AspNet.SignalR.Core.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.AspNet.SignalR.Core.dll": {} - } - }, - "Microsoft.AspNet.SignalR.JS/2.2.0": { - "type": "package", - "dependencies": { - "jQuery": "1.6.4" - } - }, - "Microsoft.AspNet.StaticFiles/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.StaticFiles.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.StaticFiles.dll": {} - } - }, - "Microsoft.AspNet.Tooling.Razor/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Razor.Runtime": "4.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Tooling.Razor.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Tooling.Razor.dll": {} - } - }, - "Microsoft.AspNet.Web.Optimization/1.1.3": { - "type": "package", - "dependencies": { - "Microsoft.Web.Infrastructure": "1.0.0", - "WebGrease": "1.5.2" - }, - "compile": { - "lib/net40/System.Web.Optimization.dll": {} - }, - "runtime": { - "lib/net40/System.Web.Optimization.dll": {} - } - }, - "Microsoft.AspNet.WebSockets.Protocol/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.WebSockets.Protocol.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.WebSockets.Protocol.dll": {} - } - }, - "Microsoft.AspNet.WebSockets.Server/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebSockets.Protocol": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.WebSockets.Server.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.WebSockets.Server.dll": {} - } - }, - "Microsoft.AspNet.WebUtilities/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.WebUtilities.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.WebUtilities.dll": {} - } - }, - "Microsoft.AspNetCore.Authentication.OAuth/0.0.1-alpha": { - "type": "package" - }, - "Microsoft.CodeAnalysis.Analyzers/1.0.0": { - "type": "package", - "frameworkAssemblies": [ - "System" - ] - }, - "Microsoft.CodeAnalysis.Common/1.1.0-rc1-20151109-01": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.Analyzers": "[1.0.0, 1.2.0)", - "System.Collections.Immutable": "1.1.37", - "System.Reflection.Metadata": "1.1.0" - }, - "compile": { - "lib/net45/Microsoft.CodeAnalysis.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.CodeAnalysis.dll": {} - } - }, - "Microsoft.CodeAnalysis.CSharp/1.1.0-rc1-20151109-01": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.Common": "[1.1.0-rc1-20151109-01]" - }, - "compile": { - "lib/net45/Microsoft.CodeAnalysis.CSharp.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.CodeAnalysis.CSharp.dll": {} - } - }, - "Microsoft.Data.Sqlite/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Data" - ], - "compile": { - "lib/net451/Microsoft.Data.Sqlite.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Data.Sqlite.dll": {} - } - }, - "Microsoft.Dnx.Compilation.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Dnx.Compilation.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Dnx.Compilation.Abstractions.dll": {} - } - }, - "Microsoft.Dnx.Compilation.CSharp.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.CSharp": "1.1.0-rc1-20151109-01", - "Microsoft.Dnx.Compilation.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.dll": {} - } - }, - "Microsoft.Dnx.Compilation.CSharp.Common/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.CSharp": "1.1.0-rc1-20151109-01", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.IO", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.dll": {} - } - }, - "Microsoft.Extensions.Caching.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Caching.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Caching.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Caching.Memory/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Caching.Memory.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Caching.Memory.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.CodeGeneration.Core": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.EntityFramework": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration.Core/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Core.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Core.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration.EntityFramework/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "Microsoft.AspNet.Hosting": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Core": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Text.Encoding" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration.Templating/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Razor": "4.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.IO", - "System.Runtime", - "System.Text.Encoding", - "System.Threading.Tasks" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Templating.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Templating.dll": {} - } - }, - "Microsoft.Extensions.CodeGenerators.Mvc/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.CodeGeneration": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.EntityFramework": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.dll": {} - } - }, - "Microsoft.Extensions.Configuration/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.dll": {} - } - }, - "Microsoft.Extensions.Configuration.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Configuration.Binder/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.Binder.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.Binder.dll": {} - } - }, - "Microsoft.Extensions.Configuration.CommandLine/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.CommandLine.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.CommandLine.dll": {} - } - }, - "Microsoft.Extensions.Configuration.EnvironmentVariables/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} - } - }, - "Microsoft.Extensions.Configuration.FileExtensions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.dll": {} - } - }, - "Microsoft.Extensions.Configuration.FileProviderExtensions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.FileProviderExtensions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.FileProviderExtensions.dll": {} - } - }, - "Microsoft.Extensions.Configuration.Json/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.Json.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.Json.dll": {} - } - }, - "Microsoft.Extensions.Configuration.UserSecrets/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Json": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.dll": {} - } - }, - "Microsoft.Extensions.DependencyInjection/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.DependencyInjection.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.DependencyInjection.dll": {} - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.FileSystemGlobbing/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.FileSystemGlobbing.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.FileSystemGlobbing.dll": {} - } - }, - "Microsoft.Extensions.Globalization.CultureInfoCache/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.dll": {} - } - }, - "Microsoft.Extensions.Localization/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Localization.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Localization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Localization.dll": {} - } - }, - "Microsoft.Extensions.Localization.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Localization.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Localization.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Logging/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections.Concurrent", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.dll": {} - } - }, - "Microsoft.Extensions.Logging.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Logging.Console/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.Console.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.Console.dll": {} - } - }, - "Microsoft.Extensions.Logging.Debug/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.Debug.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.Debug.dll": {} - } - }, - "Microsoft.Extensions.MemoryPool/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.MemoryPool.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.MemoryPool.dll": {} - } - }, - "Microsoft.Extensions.Options/0.0.1-alpha": { - "type": "package" - }, - "Microsoft.Extensions.OptionsModel/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Binder": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.OptionsModel.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.OptionsModel.dll": {} - } - }, - "Microsoft.Extensions.PlatformAbstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.PlatformAbstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.PlatformAbstractions.dll": {} - } - }, - "Microsoft.Extensions.Primitives/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Primitives.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Primitives.dll": {} - } - }, - "Microsoft.Extensions.WebEncoders/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.WebEncoders.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.WebEncoders.dll": {} - } - }, - "Microsoft.Extensions.WebEncoders.Core/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.WebEncoders.Core.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.WebEncoders.Core.dll": {} - } - }, - "Microsoft.Framework.Configuration/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta8" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.dll": {} - } - }, - "Microsoft.Framework.Configuration.Abstractions/1.0.0-beta8": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.Abstractions.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.Abstractions.dll": {} - } - }, - "Microsoft.Framework.Configuration.Binder/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration": "1.0.0-beta8" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.Binder.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.Binder.dll": {} - } - }, - "Microsoft.Framework.Configuration.FileExtensions/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration": "1.0.0-beta8" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.FileExtensions.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.FileExtensions.dll": {} - } - }, - "Microsoft.Framework.Configuration.Json/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration": "1.0.0-beta8", - "Microsoft.Framework.Configuration.FileExtensions": "1.0.0-beta8", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.Json.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.Json.dll": {} - } - }, - "Microsoft.Framework.ConfigurationModel/1.0.0-beta4": { - "type": "package", - "dependencies": { - "Microsoft.Framework.ConfigurationModel.Interfaces": "1.0.0-beta4", - "Microsoft.Framework.Runtime.Interfaces": "1.0.0-beta4" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.dll": {} - } - }, - "Microsoft.Framework.ConfigurationModel.Interfaces/1.0.0-beta4": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Interfaces.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Interfaces.dll": {} - } - }, - "Microsoft.Framework.ConfigurationModel.Json/1.0.0-beta4": { - "type": "package", - "dependencies": { - "Microsoft.Framework.ConfigurationModel": "1.0.0-beta4", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Json.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Json.dll": {} - } - }, - "Microsoft.Framework.Runtime.Interfaces/1.0.0-beta4": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Runtime.Interfaces.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Runtime.Interfaces.dll": {} - } - }, - "Microsoft.IdentityModel.Logging/1.0.0-rc1-211161024": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.IdentityModel.Logging.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.IdentityModel.Logging.dll": {} - } - }, - "Microsoft.IdentityModel.Protocols/2.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "System.IdentityModel.Tokens.Jwt": "5.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.IdentityModel.Protocols.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.IdentityModel.Protocols.dll": {} - } - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/2.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Protocols": "2.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": {} - } - }, - "Microsoft.Net.Http.Headers/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Net.Http.Headers.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Net.Http.Headers.dll": {} - } - }, - "Microsoft.Net.Http.Server/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final", - "Microsoft.Net.WebSockets": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Net.Http.Server.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Net.Http.Server.dll": {} - } - }, - "Microsoft.Net.WebSockets/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Net.WebSockets.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Net.WebSockets.dll": {} - } - }, - "Microsoft.NETCore.Platforms/1.0.1-beta-23516": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Targets": "1.0.1-beta-23516" - } - }, - "Microsoft.NETCore.Targets/1.0.1-beta-23516": { - "type": "package" - }, - "Microsoft.Owin/2.1.0": { - "type": "package", - "dependencies": { - "Owin": "1.0.0" - }, - "compile": { - "lib/net45/Microsoft.Owin.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.Owin.dll": {} - } - }, - "Microsoft.Owin.Security/2.1.0": { - "type": "package", - "dependencies": { - "Microsoft.Owin": "2.1.0", - "Owin": "1.0.0" - }, - "compile": { - "lib/net45/Microsoft.Owin.Security.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.Owin.Security.dll": {} - } - }, - "Microsoft.Web.Infrastructure/1.0.0": { - "type": "package", - "compile": { - "lib/net40/Microsoft.Web.Infrastructure.dll": {} - }, - "runtime": { - "lib/net40/Microsoft.Web.Infrastructure.dll": {} - } - }, - "MimeKit/1.3.0-beta7": { - "type": "package", - "frameworkAssemblies": [ - "System", - "System.Core", - "System.Data", - "System.Security" - ], - "compile": { - "lib/net451/BouncyCastle.dll": {}, - "lib/net451/MimeKit.dll": {} - }, - "runtime": { - "lib/net451/BouncyCastle.dll": {}, - "lib/net451/MimeKit.dll": {} - } - }, - "Newtonsoft.Json/7.0.1": { - "type": "package", - "compile": { - "lib/net45/Newtonsoft.Json.dll": {} - }, - "runtime": { - "lib/net45/Newtonsoft.Json.dll": {} - } - }, - "Npgsql/3.1.0-alpha6": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net45/Npgsql.dll": {} - }, - "runtime": { - "lib/net45/Npgsql.dll": {} - } - }, - "Owin/1.0.0": { - "type": "package", - "compile": { - "lib/net40/Owin.dll": {} - }, - "runtime": { - "lib/net40/Owin.dll": {} - } - }, - "PayPalButtonManagerSDK/2.10.109": { - "type": "package", - "dependencies": { - "PayPalCoreSDK": "1.7.0" - }, - "compile": { - "lib/net20/PayPalButtonManagerSDK.dll": {} - }, - "runtime": { - "lib/net20/PayPalButtonManagerSDK.dll": {} - } - }, - "PayPalCoreSDK/1.7.1": { - "type": "package", - "dependencies": { - "Newtonsoft.Json": "7.0.1" - }, - "compile": { - "lib/net451/PayPalCoreSDK.dll": {} - }, - "runtime": { - "lib/net451/PayPalCoreSDK.dll": {} - } - }, - "Remotion.Linq/2.0.1": { - "type": "package", - "compile": { - "lib/net45/Remotion.Linq.dll": {} - }, - "runtime": { - "lib/net45/Remotion.Linq.dll": {} - } - }, - "System.Collections/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Collections.Immutable/1.1.37": { - "type": "package", - "dependencies": { - "System.Collections": "4.0.0", - "System.Diagnostics.Debug": "4.0.0", - "System.Globalization": "4.0.0", - "System.Linq": "4.0.0", - "System.Resources.ResourceManager": "4.0.0", - "System.Runtime": "4.0.0", - "System.Runtime.Extensions": "4.0.0", - "System.Threading": "4.0.0" - }, - "compile": { - "lib/dotnet/System.Collections.Immutable.dll": {} - }, - "runtime": { - "lib/dotnet/System.Collections.Immutable.dll": {} - } - }, - "System.Diagnostics.Debug/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Diagnostics.DiagnosticSource/4.0.0-beta-23516": { - "type": "package", - "dependencies": { - "System.Diagnostics.Tracing": "4.0.0", - "System.Runtime": "4.0.0", - "System.Threading": "4.0.0" - }, - "compile": { - "lib/dotnet5.2/System.Diagnostics.DiagnosticSource.dll": {} - }, - "runtime": { - "lib/dotnet5.2/System.Diagnostics.DiagnosticSource.dll": {} - } - }, - "System.Diagnostics.Tracing/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Globalization/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.IdentityModel.Tokens/5.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Logging": "1.0.0-rc1-211161024", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Xml" - ], - "compile": { - "lib/net451/System.IdentityModel.Tokens.dll": {} - }, - "runtime": { - "lib/net451/System.IdentityModel.Tokens.dll": {} - } - }, - "System.IdentityModel.Tokens.Jwt/5.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "System.IdentityModel.Tokens": "5.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/System.IdentityModel.Tokens.Jwt.dll": {} - }, - "runtime": { - "lib/net451/System.IdentityModel.Tokens.Jwt.dll": {} - } - }, - "System.IO/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Linq/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Numerics.Vectors/4.1.1-beta-23516": { - "type": "package", - "compile": { - "lib/portable-net45+win8/System.Numerics.Vectors.dll": {} - }, - "runtime": { - "lib/portable-net45+win8/System.Numerics.Vectors.dll": {} - } - }, - "System.Reflection/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Reflection.Extensions/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Reflection.Metadata/1.1.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.0.0", - "System.Collections.Immutable": "1.1.37", - "System.Diagnostics.Debug": "4.0.0", - "System.IO": "4.0.0", - "System.Reflection": "4.0.0", - "System.Reflection.Extensions": "4.0.0", - "System.Reflection.Primitives": "4.0.0", - "System.Resources.ResourceManager": "4.0.0", - "System.Runtime": "4.0.0", - "System.Runtime.Extensions": "4.0.0", - "System.Runtime.InteropServices": "4.0.0", - "System.Text.Encoding": "4.0.0", - "System.Text.Encoding.Extensions": "4.0.0", - "System.Threading": "4.0.0" - }, - "compile": { - "lib/dotnet5.2/System.Reflection.Metadata.dll": {} - }, - "runtime": { - "lib/dotnet5.2/System.Reflection.Metadata.dll": {} - } - }, - "System.Reflection.Primitives/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Resources.ResourceManager/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Runtime/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Runtime.Extensions/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Runtime.InteropServices/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Text.Encoding/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Text.Encoding.Extensions/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Threading/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "WebGrease/1.5.2": { - "type": "package", - "dependencies": { - "Antlr": "3.4.1.9004", - "Newtonsoft.Json": "5.0.4" - }, - "compile": { - "lib/WebGrease.dll": {} - }, - "runtime": { - "lib/WebGrease.dll": {} - } - }, - "Zlib.Portable.Signed/1.11.0": { - "type": "package", - "compile": { - "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.dll": {} - }, - "runtime": { - "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.dll": {} - } - } - }, - "DNX,Version=v4.5.1/debian.8-x64": { - "Antlr/3.4.1.9004": { - "type": "package", - "compile": { - "lib/Antlr3.Runtime.dll": {} - }, - "runtime": { - "lib/Antlr3.Runtime.dll": {} - } - }, - "EntityFramework.Commands/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational.Design": "7.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/EntityFramework.Commands.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework.Commands.dll": {} - } - }, - "EntityFramework.Core/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Ix-Async": "1.2.5", - "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Remotion.Linq": "2.0.1", - "System.Collections.Immutable": "1.1.36" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.ComponentModel.DataAnnotations", - "System.Core", - "System.Diagnostics.Debug", - "System.Diagnostics.Tools", - "System.Globalization", - "System.Linq", - "System.Linq.Expressions", - "System.Linq.Queryable", - "System.ObjectModel", - "System.Reflection", - "System.Reflection.Extensions", - "System.Resources.ResourceManager", - "System.Runtime", - "System.Runtime.Extensions", - "System.Threading" - ], - "compile": { - "lib/dnx451/EntityFramework.Core.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework.Core.dll": {} - } - }, - "EntityFramework.MicrosoftSqlServer/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/EntityFramework.MicrosoftSqlServer.dll": {} - }, - "runtime": { - "lib/net451/EntityFramework.MicrosoftSqlServer.dll": {} - } - }, - "EntityFramework.Relational/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Data", - "System.Transactions" - ], - "compile": { - "lib/net451/EntityFramework.Relational.dll": {} - }, - "runtime": { - "lib/net451/EntityFramework.Relational.dll": {} - } - }, - "EntityFramework.Relational.Design/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.ComponentModel.DataAnnotations", - "System.Core", - "System.IO", - "System.Text.Encoding", - "System.Threading.Tasks" - ], - "compile": { - "lib/dnx451/EntityFramework.Relational.Design.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework.Relational.Design.dll": {} - } - }, - "EntityFramework.Sqlite/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.Data.Sqlite": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/EntityFramework.Sqlite.dll": {} - }, - "runtime": { - "lib/net451/EntityFramework.Sqlite.dll": {} - } - }, - "EntityFramework7.Npgsql/3.1.0-rc1-3": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Npgsql": "3.1.0-alpha6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.Core", - "System.Diagnostics.Contracts", - "System.Linq.Expressions", - "System.Reflection", - "System.Runtime" - ], - "compile": { - "lib/dnx451/EntityFramework7.Npgsql.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework7.Npgsql.dll": {} - } - }, - "EntityFramework7.Npgsql.Design/3.1.0-rc1-5": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "EntityFramework.Relational": "7.0.0-rc1-final", - "EntityFramework.Relational.Design": "7.0.0-rc1-final", - "EntityFramework7.Npgsql": "3.1.0-rc1-3", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Npgsql": "3.1.0-alpha6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.Core", - "System.Diagnostics.Contracts", - "System.Linq.Expressions", - "System.Reflection", - "System.Runtime" - ], - "compile": { - "lib/dnx451/EntityFramework7.Npgsql.Design.dll": {} - }, - "runtime": { - "lib/dnx451/EntityFramework7.Npgsql.Design.dll": {} - } - }, - "Google.Apis/1.11.1": { - "type": "package", - "dependencies": { - "Google.Apis.Core": "1.11.1", - "log4net": "2.0.3", - "Zlib.Portable.Signed": "1.11.0" - }, - "compile": { - "lib/net45/Google.Apis.dll": {}, - "lib/net45/Google.Apis.PlatformServices.dll": {} - }, - "runtime": { - "lib/net45/Google.Apis.dll": {}, - "lib/net45/Google.Apis.PlatformServices.dll": {} - } - }, - "Google.Apis.Core/1.11.1": { - "type": "package", - "dependencies": { - "Newtonsoft.Json": "7.0.1" - }, - "compile": { - "lib/net45/Google.Apis.Core.dll": {} - }, - "runtime": { - "lib/net45/Google.Apis.Core.dll": {} - } - }, - "Ix-Async/1.2.5": { - "type": "package", - "frameworkAssemblies": [ - "System", - "System.Core" - ], - "compile": { - "lib/net45/System.Interactive.Async.dll": {} - }, - "runtime": { - "lib/net45/System.Interactive.Async.dll": {} - } - }, - "jQuery/1.6.4": { - "type": "package" - }, - "log4net/2.0.3": { - "type": "package", - "compile": { - "lib/net40-full/log4net.dll": {} - }, - "runtime": { - "lib/net40-full/log4net.dll": {} - } - }, - "MailKit/1.3.0-beta7": { - "type": "package", - "dependencies": { - "MimeKit": "1.3.0-beta7" - }, - "frameworkAssemblies": [ - "System", - "System.Core", - "System.Data" - ], - "compile": { - "lib/net451/MailKit.dll": {} - }, - "runtime": { - "lib/net451/MailKit.dll": {} - } - }, - "MarkdownDeep-av.NET/1.5.2": { - "type": "package", - "compile": { - "lib/net451/MarkdownDeep.dll": {} - }, - "runtime": { - "lib/net451/MarkdownDeep.dll": {} - } - }, - "Microsoft.AspNet.Antiforgery/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.DataProtection": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebUtilities": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Antiforgery.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Antiforgery.dll": {} - } - }, - "Microsoft.AspNet.Authentication/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.DataProtection": "1.0.0-rc1-final", - "Microsoft.AspNet.Http": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.dll": {} - } - }, - "Microsoft.AspNet.Authentication.Cookies/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.Cookies.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.Cookies.dll": {} - } - }, - "Microsoft.AspNet.Authentication.Facebook/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication.OAuth": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.Facebook.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.Facebook.dll": {} - } - }, - "Microsoft.AspNet.Authentication.JwtBearer/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "2.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Authentication.JwtBearer.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Authentication.JwtBearer.dll": {} - } - }, - "Microsoft.AspNet.Authentication.OAuth/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.OAuth.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.OAuth.dll": {} - } - }, - "Microsoft.AspNet.Authentication.OpenIdConnect/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final", - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "2.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Authentication.OpenIdConnect.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Authentication.OpenIdConnect.dll": {} - } - }, - "Microsoft.AspNet.Authentication.Twitter/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authentication.Twitter.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authentication.Twitter.dll": {} - } - }, - "Microsoft.AspNet.Authorization/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Features": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Authorization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Authorization.dll": {} - } - }, - "Microsoft.AspNet.Cors/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Cors.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Cors.dll": {} - } - }, - "Microsoft.AspNet.Cryptography.Internal/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Cryptography.Internal.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Cryptography.Internal.dll": {} - } - }, - "Microsoft.AspNet.Cryptography.KeyDerivation/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Cryptography.Internal": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.dll": {} - } - }, - "Microsoft.AspNet.DataProtection/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Cryptography.Internal": "1.0.0-rc1-final", - "Microsoft.AspNet.DataProtection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.IO", - "System.Security", - "System.Xml", - "System.Xml.Linq" - ], - "compile": { - "lib/net451/Microsoft.AspNet.DataProtection.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.DataProtection.dll": {} - } - }, - "Microsoft.AspNet.DataProtection.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.DataProtection.SystemWeb/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.DataProtection": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Configuration", - "System.Core", - "System.Security", - "System.Web" - ], - "compile": { - "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.dll": {} - } - }, - "Microsoft.AspNet.Diagnostics/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Diagnostics.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebUtilities": "1.0.0-rc1-final", - "Microsoft.Dnx.Compilation.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Diagnostics.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Diagnostics.dll": {} - } - }, - "Microsoft.AspNet.Diagnostics.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Diagnostics.Entity/7.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Configuration", - "System.Core", - "System.Threading.Tasks" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Diagnostics.Entity.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Diagnostics.Entity.dll": {} - } - }, - "Microsoft.AspNet.FileProviders.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.FileProviders.Physical/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.FileProviders.Physical.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.FileProviders.Physical.dll": {} - } - }, - "Microsoft.AspNet.Hosting/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Server.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Http": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Dnx.Compilation.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.CommandLine": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Json": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Hosting.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Hosting.dll": {} - } - }, - "Microsoft.AspNet.Hosting.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Hosting.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Hosting.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Hosting.Server.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Features": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Html.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Html.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Html.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Http/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebUtilities": "1.0.0-rc1-final", - "Microsoft.Net.Http.Headers": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.dll": {} - } - }, - "Microsoft.AspNet.Http.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Features": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Http.Extensions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final", - "Microsoft.Net.Http.Headers": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.Extensions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.Extensions.dll": {} - } - }, - "Microsoft.AspNet.Http.Features/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Http.Features.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Http.Features.dll": {} - } - }, - "Microsoft.AspNet.Identity/3.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authentication.Cookies": "1.0.0-rc1-final", - "Microsoft.AspNet.Cryptography.KeyDerivation": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Identity.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Identity.dll": {} - } - }, - "Microsoft.AspNet.Identity.EntityFramework/3.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Relational": "7.0.0-rc1-final", - "Microsoft.AspNet.Identity": "3.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime", - "System.Threading.Tasks" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Identity.EntityFramework.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Identity.EntityFramework.dll": {} - } - }, - "Microsoft.AspNet.IISPlatformHandler/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.IISPlatformHandler.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.IISPlatformHandler.dll": {} - } - }, - "Microsoft.AspNet.JsonPatch/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.JsonPatch.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.JsonPatch.dll": {} - } - }, - "Microsoft.AspNet.Localization/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Globalization.CultureInfoCache": "1.0.0-rc1-final", - "Microsoft.Extensions.Localization.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Localization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Localization.dll": {} - } - }, - "Microsoft.AspNet.Mvc/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.ApiExplorer": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Cors": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.DataAnnotations": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Formatters.Json": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Localization": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Razor": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.ViewFeatures": "6.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Abstractions/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Routing": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Abstractions.dll": {} - } - }, - "Microsoft.AspNet.Mvc.ApiExplorer/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Core/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Authorization": "1.0.0-rc1-final", - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Abstractions": "6.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.MemoryPool": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final", - "System.Diagnostics.DiagnosticSource": "4.0.0-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Core.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Core.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Cors/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Cors": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Cors.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Cors.dll": {} - } - }, - "Microsoft.AspNet.Mvc.DataAnnotations/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", - "Microsoft.Extensions.Localization": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.ComponentModel.DataAnnotations", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Formatters.Json/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.JsonPatch": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Localization/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Localization": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Razor": "6.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.Localization": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Localization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Localization.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Razor/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Razor.Host": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.ViewFeatures": "6.0.0-rc1-final", - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces": "1.0.0-rc1-final", - "Microsoft.AspNet.Razor.Runtime.Precompilation": "4.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Common": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections", - "System.Core", - "System.IO", - "System.Runtime", - "System.Text.Encoding", - "System.Threading.Tasks" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.dll": {} - } - }, - "Microsoft.AspNet.Mvc.Razor.Host/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.AspNet.Razor.Runtime": "4.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.dll": {} - } - }, - "Microsoft.AspNet.Mvc.TagHelpers/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Mvc.Razor": "6.0.0-rc1-final", - "Microsoft.Extensions.Caching.Memory": "1.0.0-rc1-final", - "Microsoft.Extensions.FileSystemGlobbing": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.dll": {} - } - }, - "Microsoft.AspNet.Mvc.ViewFeatures/6.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Antiforgery": "1.0.0-rc1-final", - "Microsoft.AspNet.Diagnostics.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Html.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.DataAnnotations": "6.0.0-rc1-final", - "Microsoft.AspNet.Mvc.Formatters.Json": "6.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.dll": {} - } - }, - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.dll": {} - } - }, - "Microsoft.AspNet.Razor/4.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Razor.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Razor.dll": {} - } - }, - "Microsoft.AspNet.Razor.Runtime/4.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Html.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Razor": "4.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Xml", - "System.Xml.Linq" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.dll": {} - } - }, - "Microsoft.AspNet.Razor.Runtime.Precompilation/4.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Razor.Runtime": "4.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.dll": {} - } - }, - "Microsoft.AspNet.Routing/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Routing.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Routing.dll": {} - } - }, - "Microsoft.AspNet.Server.Kestrel/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Hosting": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "System.Numerics.Vectors": "4.1.1-beta-23516" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Server.Kestrel.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Server.Kestrel.dll": {} - } - }, - "Microsoft.AspNet.Server.WebListener/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Hosting": "1.0.0-rc1-final", - "Microsoft.Net.Http.Headers": "1.0.0-rc1-final", - "Microsoft.Net.Http.Server": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.AspNet.Server.WebListener.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.AspNet.Server.WebListener.dll": {} - } - }, - "Microsoft.AspNet.Session/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Session.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Session.dll": {} - } - }, - "Microsoft.AspNet.SignalR.Core/2.2.0": { - "type": "package", - "dependencies": { - "Microsoft.Owin": "2.1.0", - "Microsoft.Owin.Security": "2.1.0", - "Newtonsoft.Json": "6.0.4", - "Owin": "1.0.0" - }, - "compile": { - "lib/net45/Microsoft.AspNet.SignalR.Core.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.AspNet.SignalR.Core.dll": {} - } - }, - "Microsoft.AspNet.SignalR.JS/2.2.0": { - "type": "package", - "dependencies": { - "jQuery": "1.6.4" - } - }, - "Microsoft.AspNet.StaticFiles/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Hosting.Abstractions": "1.0.0-rc1-final", - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.StaticFiles.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.StaticFiles.dll": {} - } - }, - "Microsoft.AspNet.Tooling.Razor/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Razor.Runtime": "4.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.Tooling.Razor.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.Tooling.Razor.dll": {} - } - }, - "Microsoft.AspNet.Web.Optimization/1.1.3": { - "type": "package", - "dependencies": { - "Microsoft.Web.Infrastructure": "1.0.0", - "WebGrease": "1.5.2" - }, - "compile": { - "lib/net40/System.Web.Optimization.dll": {} - }, - "runtime": { - "lib/net40/System.Web.Optimization.dll": {} - } - }, - "Microsoft.AspNet.WebSockets.Protocol/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.WebSockets.Protocol.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.WebSockets.Protocol.dll": {} - } - }, - "Microsoft.AspNet.WebSockets.Server/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Http.Extensions": "1.0.0-rc1-final", - "Microsoft.AspNet.WebSockets.Protocol": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.WebSockets.Server.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.WebSockets.Server.dll": {} - } - }, - "Microsoft.AspNet.WebUtilities/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.AspNet.WebUtilities.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.AspNet.WebUtilities.dll": {} - } - }, - "Microsoft.AspNetCore.Authentication.OAuth/0.0.1-alpha": { - "type": "package" - }, - "Microsoft.CodeAnalysis.Analyzers/1.0.0": { - "type": "package", - "frameworkAssemblies": [ - "System" - ] - }, - "Microsoft.CodeAnalysis.Common/1.1.0-rc1-20151109-01": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.Analyzers": "[1.0.0, 1.2.0)", - "System.Collections.Immutable": "1.1.37", - "System.Reflection.Metadata": "1.1.0" - }, - "compile": { - "lib/net45/Microsoft.CodeAnalysis.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.CodeAnalysis.dll": {} - } - }, - "Microsoft.CodeAnalysis.CSharp/1.1.0-rc1-20151109-01": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.Common": "[1.1.0-rc1-20151109-01]" - }, - "compile": { - "lib/net45/Microsoft.CodeAnalysis.CSharp.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.CodeAnalysis.CSharp.dll": {} - } - }, - "Microsoft.Data.Sqlite/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Data" - ], - "compile": { - "lib/net451/Microsoft.Data.Sqlite.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Data.Sqlite.dll": {} - } - }, - "Microsoft.Dnx.Compilation.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Dnx.Compilation.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Dnx.Compilation.Abstractions.dll": {} - } - }, - "Microsoft.Dnx.Compilation.CSharp.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.CSharp": "1.1.0-rc1-20151109-01", - "Microsoft.Dnx.Compilation.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.dll": {} - } - }, - "Microsoft.Dnx.Compilation.CSharp.Common/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.CSharp": "1.1.0-rc1-20151109-01", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.IO", - "System.Runtime" - ], - "compile": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.dll": {} - } - }, - "Microsoft.Extensions.Caching.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Caching.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Caching.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Caching.Memory/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Caching.Memory.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Caching.Memory.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.CodeGeneration.Core": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.EntityFramework": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration.Core/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Core.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Core.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration.EntityFramework/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "EntityFramework.Core": "7.0.0-rc1-final", - "Microsoft.AspNet.Hosting": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Core": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Text.Encoding" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.dll": {} - } - }, - "Microsoft.Extensions.CodeGeneration.Templating/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.Razor": "4.0.0-rc1-final", - "Microsoft.Dnx.Compilation.CSharp.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.IO", - "System.Runtime", - "System.Text.Encoding", - "System.Threading.Tasks" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Templating.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGeneration.Templating.dll": {} - } - }, - "Microsoft.Extensions.CodeGenerators.Mvc/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.CodeGeneration": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.EntityFramework": "1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration.Templating": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.dll": {} - } - }, - "Microsoft.Extensions.Configuration/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.dll": {} - } - }, - "Microsoft.Extensions.Configuration.Abstractions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Configuration.Binder/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.Binder.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.Binder.dll": {} - } - }, - "Microsoft.Extensions.Configuration.CommandLine/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.CommandLine.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.CommandLine.dll": {} - } - }, - "Microsoft.Extensions.Configuration.EnvironmentVariables/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} - } - }, - "Microsoft.Extensions.Configuration.FileExtensions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.dll": {} - } - }, - "Microsoft.Extensions.Configuration.FileProviderExtensions/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.AspNet.FileProviders.Physical": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.FileProviderExtensions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.FileProviderExtensions.dll": {} - } - }, - "Microsoft.Extensions.Configuration.Json/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc1-final", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.Json.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.Json.dll": {} - } - }, - "Microsoft.Extensions.Configuration.UserSecrets/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Json": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.dll": {} - } - }, - "Microsoft.Extensions.DependencyInjection/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.DependencyInjection.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.DependencyInjection.dll": {} - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.FileSystemGlobbing/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.FileSystemGlobbing.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.FileSystemGlobbing.dll": {} - } - }, - "Microsoft.Extensions.Globalization.CultureInfoCache/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.dll": {} - } - }, - "Microsoft.Extensions.Localization/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Localization.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Localization.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Localization.dll": {} - } - }, - "Microsoft.Extensions.Localization.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Localization.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Localization.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Logging/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Collections.Concurrent", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.dll": {} - } - }, - "Microsoft.Extensions.Logging.Abstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.Abstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.Abstractions.dll": {} - } - }, - "Microsoft.Extensions.Logging.Console/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.Console.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.Console.dll": {} - } - }, - "Microsoft.Extensions.Logging.Debug/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Logging.Debug.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Logging.Debug.dll": {} - } - }, - "Microsoft.Extensions.MemoryPool/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.MemoryPool.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.MemoryPool.dll": {} - } - }, - "Microsoft.Extensions.Options/0.0.1-alpha": { - "type": "package" - }, - "Microsoft.Extensions.OptionsModel/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Configuration.Binder": "1.0.0-rc1-final", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.OptionsModel.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.OptionsModel.dll": {} - } - }, - "Microsoft.Extensions.PlatformAbstractions/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.PlatformAbstractions.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.PlatformAbstractions.dll": {} - } - }, - "Microsoft.Extensions.Primitives/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.Primitives.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.Primitives.dll": {} - } - }, - "Microsoft.Extensions.WebEncoders/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.OptionsModel": "1.0.0-rc1-final", - "Microsoft.Extensions.WebEncoders.Core": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.WebEncoders.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.WebEncoders.dll": {} - } - }, - "Microsoft.Extensions.WebEncoders.Core/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Extensions.WebEncoders.Core.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Extensions.WebEncoders.Core.dll": {} - } - }, - "Microsoft.Framework.Configuration/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta8" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.dll": {} - } - }, - "Microsoft.Framework.Configuration.Abstractions/1.0.0-beta8": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.Abstractions.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.Abstractions.dll": {} - } - }, - "Microsoft.Framework.Configuration.Binder/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration": "1.0.0-beta8" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.Binder.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.Binder.dll": {} - } - }, - "Microsoft.Framework.Configuration.FileExtensions/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration": "1.0.0-beta8" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.FileExtensions.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.FileExtensions.dll": {} - } - }, - "Microsoft.Framework.Configuration.Json/1.0.0-beta8": { - "type": "package", - "dependencies": { - "Microsoft.Framework.Configuration": "1.0.0-beta8", - "Microsoft.Framework.Configuration.FileExtensions": "1.0.0-beta8", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Configuration.Json.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Configuration.Json.dll": {} - } - }, - "Microsoft.Framework.ConfigurationModel/1.0.0-beta4": { - "type": "package", - "dependencies": { - "Microsoft.Framework.ConfigurationModel.Interfaces": "1.0.0-beta4", - "Microsoft.Framework.Runtime.Interfaces": "1.0.0-beta4" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.dll": {} - } - }, - "Microsoft.Framework.ConfigurationModel.Interfaces/1.0.0-beta4": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Interfaces.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Interfaces.dll": {} - } - }, - "Microsoft.Framework.ConfigurationModel.Json/1.0.0-beta4": { - "type": "package", - "dependencies": { - "Microsoft.Framework.ConfigurationModel": "1.0.0-beta4", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Json.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.ConfigurationModel.Json.dll": {} - } - }, - "Microsoft.Framework.Runtime.Interfaces/1.0.0-beta4": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/dnx451/Microsoft.Framework.Runtime.Interfaces.dll": {} - }, - "runtime": { - "lib/dnx451/Microsoft.Framework.Runtime.Interfaces.dll": {} - } - }, - "Microsoft.IdentityModel.Logging/1.0.0-rc1-211161024": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.IdentityModel.Logging.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.IdentityModel.Logging.dll": {} - } - }, - "Microsoft.IdentityModel.Protocols/2.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "System.IdentityModel.Tokens.Jwt": "5.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Net.Http" - ], - "compile": { - "lib/net451/Microsoft.IdentityModel.Protocols.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.IdentityModel.Protocols.dll": {} - } - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/2.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Protocols": "2.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": {} - } - }, - "Microsoft.Net.Http.Headers/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Net.Http.Headers.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Net.Http.Headers.dll": {} - } - }, - "Microsoft.Net.Http.Server/1.0.0-rc1-final": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc1-final", - "Microsoft.Extensions.Primitives": "1.0.0-rc1-final", - "Microsoft.Net.WebSockets": "1.0.0-rc1-final" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Net.Http.Server.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Net.Http.Server.dll": {} - } - }, - "Microsoft.Net.WebSockets/1.0.0-rc1-final": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/Microsoft.Net.WebSockets.dll": {} - }, - "runtime": { - "lib/net451/Microsoft.Net.WebSockets.dll": {} - } - }, - "Microsoft.NETCore.Platforms/1.0.1-beta-23516": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Targets": "1.0.1-beta-23516" - } - }, - "Microsoft.NETCore.Targets/1.0.1-beta-23516": { - "type": "package" - }, - "Microsoft.Owin/2.1.0": { - "type": "package", - "dependencies": { - "Owin": "1.0.0" - }, - "compile": { - "lib/net45/Microsoft.Owin.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.Owin.dll": {} - } - }, - "Microsoft.Owin.Security/2.1.0": { - "type": "package", - "dependencies": { - "Microsoft.Owin": "2.1.0", - "Owin": "1.0.0" - }, - "compile": { - "lib/net45/Microsoft.Owin.Security.dll": {} - }, - "runtime": { - "lib/net45/Microsoft.Owin.Security.dll": {} - } - }, - "Microsoft.Web.Infrastructure/1.0.0": { - "type": "package", - "compile": { - "lib/net40/Microsoft.Web.Infrastructure.dll": {} - }, - "runtime": { - "lib/net40/Microsoft.Web.Infrastructure.dll": {} - } - }, - "MimeKit/1.3.0-beta7": { - "type": "package", - "frameworkAssemblies": [ - "System", - "System.Core", - "System.Data", - "System.Security" - ], - "compile": { - "lib/net451/BouncyCastle.dll": {}, - "lib/net451/MimeKit.dll": {} - }, - "runtime": { - "lib/net451/BouncyCastle.dll": {}, - "lib/net451/MimeKit.dll": {} - } - }, - "Newtonsoft.Json/7.0.1": { - "type": "package", - "compile": { - "lib/net45/Newtonsoft.Json.dll": {} - }, - "runtime": { - "lib/net45/Newtonsoft.Json.dll": {} - } - }, - "Npgsql/3.1.0-alpha6": { - "type": "package", - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net45/Npgsql.dll": {} - }, - "runtime": { - "lib/net45/Npgsql.dll": {} - } - }, - "Owin/1.0.0": { - "type": "package", - "compile": { - "lib/net40/Owin.dll": {} - }, - "runtime": { - "lib/net40/Owin.dll": {} - } - }, - "PayPalButtonManagerSDK/2.10.109": { - "type": "package", - "dependencies": { - "PayPalCoreSDK": "1.7.0" - }, - "compile": { - "lib/net20/PayPalButtonManagerSDK.dll": {} - }, - "runtime": { - "lib/net20/PayPalButtonManagerSDK.dll": {} - } - }, - "PayPalCoreSDK/1.7.1": { - "type": "package", - "dependencies": { - "Newtonsoft.Json": "7.0.1" - }, - "compile": { - "lib/net451/PayPalCoreSDK.dll": {} - }, - "runtime": { - "lib/net451/PayPalCoreSDK.dll": {} - } - }, - "Remotion.Linq/2.0.1": { - "type": "package", - "compile": { - "lib/net45/Remotion.Linq.dll": {} - }, - "runtime": { - "lib/net45/Remotion.Linq.dll": {} - } - }, - "System.Collections/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Collections.Immutable/1.1.37": { - "type": "package", - "dependencies": { - "System.Collections": "4.0.0", - "System.Diagnostics.Debug": "4.0.0", - "System.Globalization": "4.0.0", - "System.Linq": "4.0.0", - "System.Resources.ResourceManager": "4.0.0", - "System.Runtime": "4.0.0", - "System.Runtime.Extensions": "4.0.0", - "System.Threading": "4.0.0" - }, - "compile": { - "lib/dotnet/System.Collections.Immutable.dll": {} - }, - "runtime": { - "lib/dotnet/System.Collections.Immutable.dll": {} - } - }, - "System.Diagnostics.Debug/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Diagnostics.DiagnosticSource/4.0.0-beta-23516": { - "type": "package", - "dependencies": { - "System.Diagnostics.Tracing": "4.0.0", - "System.Runtime": "4.0.0", - "System.Threading": "4.0.0" - }, - "compile": { - "lib/dotnet5.2/System.Diagnostics.DiagnosticSource.dll": {} - }, - "runtime": { - "lib/dotnet5.2/System.Diagnostics.DiagnosticSource.dll": {} - } - }, - "System.Diagnostics.Tracing/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Globalization/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.IdentityModel.Tokens/5.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Logging": "1.0.0-rc1-211161024", - "Newtonsoft.Json": "6.0.6" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core", - "System.Xml" - ], - "compile": { - "lib/net451/System.IdentityModel.Tokens.dll": {} - }, - "runtime": { - "lib/net451/System.IdentityModel.Tokens.dll": {} - } - }, - "System.IdentityModel.Tokens.Jwt/5.0.0-rc1-211161024": { - "type": "package", - "dependencies": { - "System.IdentityModel.Tokens": "5.0.0-rc1-211161024" - }, - "frameworkAssemblies": [ - "Microsoft.CSharp", - "mscorlib", - "System", - "System.Core" - ], - "compile": { - "lib/net451/System.IdentityModel.Tokens.Jwt.dll": {} - }, - "runtime": { - "lib/net451/System.IdentityModel.Tokens.Jwt.dll": {} - } - }, - "System.IO/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Linq/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Numerics.Vectors/4.1.1-beta-23516": { - "type": "package", - "compile": { - "lib/portable-net45+win8/System.Numerics.Vectors.dll": {} - }, - "runtime": { - "lib/portable-net45+win8/System.Numerics.Vectors.dll": {} - } - }, - "System.Reflection/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Reflection.Extensions/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Reflection.Metadata/1.1.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.0.0", - "System.Collections.Immutable": "1.1.37", - "System.Diagnostics.Debug": "4.0.0", - "System.IO": "4.0.0", - "System.Reflection": "4.0.0", - "System.Reflection.Extensions": "4.0.0", - "System.Reflection.Primitives": "4.0.0", - "System.Resources.ResourceManager": "4.0.0", - "System.Runtime": "4.0.0", - "System.Runtime.Extensions": "4.0.0", - "System.Runtime.InteropServices": "4.0.0", - "System.Text.Encoding": "4.0.0", - "System.Text.Encoding.Extensions": "4.0.0", - "System.Threading": "4.0.0" - }, - "compile": { - "lib/dotnet5.2/System.Reflection.Metadata.dll": {} - }, - "runtime": { - "lib/dotnet5.2/System.Reflection.Metadata.dll": {} - } - }, - "System.Reflection.Primitives/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Resources.ResourceManager/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Runtime/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Runtime.Extensions/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Runtime.InteropServices/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Text.Encoding/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Text.Encoding.Extensions/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "System.Threading/4.0.0": { - "type": "package", - "compile": { - "ref/net45/_._": {} - }, - "runtime": { - "lib/net45/_._": {} - } - }, - "WebGrease/1.5.2": { - "type": "package", - "dependencies": { - "Antlr": "3.4.1.9004", - "Newtonsoft.Json": "5.0.4" - }, - "compile": { - "lib/WebGrease.dll": {} - }, - "runtime": { - "lib/WebGrease.dll": {} - } - }, - "Zlib.Portable.Signed/1.11.0": { - "type": "package", - "compile": { - "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.dll": {} - }, - "runtime": { - "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.dll": {} - } - } - } - }, - "libraries": { - "Antlr/3.4.1.9004": { - "type": "package", - "sha512": "c1S+HBE+KYA5EBxtn25LEK02hHPH/tDQ6RviUTTCJpZIPoputtn8ArsQJy9lVJWZOnw37ufByO2Fmf1M8wpr8Q==", - "files": [ - "Antlr.3.4.1.9004.nupkg", - "Antlr.3.4.1.9004.nupkg.sha512", - "Antlr.nuspec", - "lib/Antlr3.Runtime.dll", - "lib/Antlr3.Runtime.pdb" - ] + } + }, + "libraries": { + "Antlr/3.4.1.9004": { + "sha512": "c1S+HBE+KYA5EBxtn25LEK02hHPH/tDQ6RviUTTCJpZIPoputtn8ArsQJy9lVJWZOnw37ufByO2Fmf1M8wpr8Q==", + "type": "package", + "files": [ + "Antlr.3.4.1.9004.nupkg", + "Antlr.3.4.1.9004.nupkg.sha512", + "Antlr.nuspec", + "lib/Antlr3.Runtime.dll", + "lib/Antlr3.Runtime.pdb" + ] }, "EntityFramework.Commands/7.0.0-rc1-final": { - "type": "package", "sha512": "+wa2VWX3/vDkOpeCeIotMevqpIISimGqeYNTGYRLRhv+8HzsCLeymLzmmYpjav6zYQVvuJiJodapQvijAIfRrA==", + "type": "package", "files": [ + "EntityFramework.Commands.7.0.0-rc1-final.nupkg", + "EntityFramework.Commands.7.0.0-rc1-final.nupkg.sha512", + "EntityFramework.Commands.nuspec", "app/ef", "app/ef.cmd", "app/project.json", "build/netcore50/EntityFramework.Commands.props", - "EntityFramework.Commands.7.0.0-rc1-final.nupkg", - "EntityFramework.Commands.7.0.0-rc1-final.nupkg.sha512", - "EntityFramework.Commands.nuspec", "lib/dnx451/EntityFramework.Commands.dll", "lib/dnx451/EntityFramework.Commands.xml", "lib/dnxcore50/EntityFramework.Commands.dll", @@ -8586,17 +2930,17 @@ "lib/net451/EntityFramework.Commands.dll", "lib/net451/EntityFramework.Commands.xml", "lib/netcore50/_._", - "tools/about_EntityFramework.help.txt", "tools/EntityFramework.psd1", "tools/EntityFramework.psm1", + "tools/OperationHandlers.cs", + "tools/about_EntityFramework.help.txt", "tools/init.ps1", - "tools/install.ps1", - "tools/OperationHandlers.cs" + "tools/install.ps1" ] }, "EntityFramework.Core/7.0.0-rc1-final": { - "type": "package", "sha512": "afwsjOF4xM5KiwAxKMz9R0H8TigWE/jX0FwGBO/QtuA1ElEVLqlQVH4+7PyZaA35HguYRm0wOCmUq9RVTmiAfA==", + "type": "package", "files": [ "EntityFramework.Core.7.0.0-rc1-final.nupkg", "EntityFramework.Core.7.0.0-rc1-final.nupkg.sha512", @@ -8612,8 +2956,8 @@ ] }, "EntityFramework.MicrosoftSqlServer/7.0.0-rc1-final": { - "type": "package", "sha512": "FMB2MgT5aXMF7qGMwf5AGcmpNFoT4s1w0QJ5h+L8W4gyMxWpYamGp9hms7rOSAWY44ZDl5ZMpxiTfu3nY3Nqeg==", + "type": "package", "files": [ "EntityFramework.MicrosoftSqlServer.7.0.0-rc1-final.nupkg", "EntityFramework.MicrosoftSqlServer.7.0.0-rc1-final.nupkg.sha512", @@ -8627,8 +2971,8 @@ ] }, "EntityFramework.Relational/7.0.0-rc1-final": { - "type": "package", "sha512": "0Feoct9mtKOIjovUgfESfVDL/odvxNXsIgK3bdlkx7Fsiqp5/tx8oiMx+qO7oNRYWsXN6XDlGKHLOzWEdUssKA==", + "type": "package", "files": [ "EntityFramework.Relational.7.0.0-rc1-final.nupkg", "EntityFramework.Relational.7.0.0-rc1-final.nupkg.sha512", @@ -8642,13 +2986,13 @@ ] }, "EntityFramework.Relational.Design/7.0.0-rc1-final": { - "type": "package", "sha512": "sXAqOxpHmbqOELC21vAzKlsjqgNCrk3jEjyJxjGnn1+j4hazxiqgSBTl8ZofqYzLO6ias9WfeXJy8HcXOl7waw==", + "type": "package", "files": [ - "build/netcore50/EntityFramework.Relational.Design.props", "EntityFramework.Relational.Design.7.0.0-rc1-final.nupkg", "EntityFramework.Relational.Design.7.0.0-rc1-final.nupkg.sha512", "EntityFramework.Relational.Design.nuspec", + "build/netcore50/EntityFramework.Relational.Design.props", "lib/dnx451/EntityFramework.Relational.Design.dll", "lib/dnx451/EntityFramework.Relational.Design.xml", "lib/dnxcore50/EntityFramework.Relational.Design.dll", @@ -8659,8 +3003,8 @@ ] }, "EntityFramework.Sqlite/7.0.0-rc1-final": { - "type": "package", "sha512": "B+h4HHUnCSN/d4DIxW89B6q4efcZzQjajQb1yrlALEeZuCBDIzO0nrEdRZsRSNqJaNzmxRu/OsYqrZVOORUrGw==", + "type": "package", "files": [ "EntityFramework.Sqlite.7.0.0-rc1-final.nupkg", "EntityFramework.Sqlite.7.0.0-rc1-final.nupkg.sha512", @@ -8674,8 +3018,8 @@ ] }, "EntityFramework7.Npgsql/3.1.0-rc1-3": { - "type": "package", "sha512": "VW/pz4Luixgc9UuAXPP9vzPIrrw9sHD4ozd2HUzeI3Sd4RdCgSFQT+B3HhPw/+JGKcdAnIQ4D5/Llk43fH07hw==", + "type": "package", "files": [ "EntityFramework7.Npgsql.3.1.0-rc1-3.nupkg", "EntityFramework7.Npgsql.3.1.0-rc1-3.nupkg.sha512", @@ -8689,8 +3033,8 @@ ] }, "EntityFramework7.Npgsql.Design/3.1.0-rc1-5": { - "type": "package", "sha512": "h7bsey+w3HBqhZQGbk6XeEMxXNCt+1hVg1Ju4QzZHUGSzWT6/ZduaPs3UjNQhpvcTRE7GYa99gYraKdNH3jEOg==", + "type": "package", "files": [ "EntityFramework7.Npgsql.Design.3.1.0-rc1-5.nupkg", "EntityFramework7.Npgsql.Design.3.1.0-rc1-5.nupkg.sha512", @@ -8704,91 +3048,91 @@ ] }, "Google.Apis/1.11.1": { - "type": "package", "sha512": "GyWdeflVhu01TYh/KOoMceFYy4rc3+uGKFFw17PpABfdRM1wqCiO73asytkcMGUS91GjPwcONZF5UIjDKpeUSQ==", + "type": "package", "files": [ "Google.Apis.1.11.1.nupkg", "Google.Apis.1.11.1.nupkg.sha512", "Google.Apis.nuspec", - "lib/net45/Google.Apis.dll", - "lib/net45/Google.Apis.pdb", + "License.txt", "lib/net45/Google.Apis.PlatformServices.dll", "lib/net45/Google.Apis.PlatformServices.pdb", "lib/net45/Google.Apis.PlatformServices.xml", + "lib/net45/Google.Apis.dll", + "lib/net45/Google.Apis.pdb", "lib/net45/Google.Apis.xml", "lib/portable-net45+sl50+netcore45+wpa81+wp8/Google.Apis.dll", "lib/portable-net45+sl50+netcore45+wpa81+wp8/Google.Apis.pdb", "lib/portable-net45+sl50+netcore45+wpa81+wp8/Google.Apis.xml", - "lib/win81/Google.Apis.dll", - "lib/win81/Google.Apis.pdb", "lib/win81/Google.Apis.PlatformServices.dll", "lib/win81/Google.Apis.PlatformServices.pdb", "lib/win81/Google.Apis.PlatformServices.xml", + "lib/win81/Google.Apis.dll", + "lib/win81/Google.Apis.pdb", "lib/win81/Google.Apis.xml", - "lib/wp8/Google.Apis.dll", - "lib/wp8/Google.Apis.pdb", "lib/wp8/Google.Apis.PlatformServices.dll", "lib/wp8/Google.Apis.PlatformServices.pdb", "lib/wp8/Google.Apis.PlatformServices.xml", + "lib/wp8/Google.Apis.dll", + "lib/wp8/Google.Apis.pdb", "lib/wp8/Google.Apis.xml", - "lib/wpa81/Google.Apis.dll", - "lib/wpa81/Google.Apis.pdb", "lib/wpa81/Google.Apis.PlatformServices.dll", "lib/wpa81/Google.Apis.PlatformServices.pdb", "lib/wpa81/Google.Apis.PlatformServices.xml", - "lib/wpa81/Google.Apis.xml", - "License.txt" + "lib/wpa81/Google.Apis.dll", + "lib/wpa81/Google.Apis.pdb", + "lib/wpa81/Google.Apis.xml" ] }, "Google.Apis.Core/1.11.1": { - "type": "package", "sha512": "0Vg/D4BhfPFrlp5iPmp2WxTm3TpgQuwsd9jiYoVXhnbecTnVhRNqY0sJTK8yoMm+otuJ4Dt1C7KSeQ0yWA1d/g==", + "type": "package", "files": [ "Google.Apis.Core.1.11.1.nupkg", "Google.Apis.Core.1.11.1.nupkg.sha512", "Google.Apis.Core.nuspec", + "License.txt", "lib/net45/Google.Apis.Core.dll", "lib/net45/Google.Apis.Core.pdb", "lib/net45/Google.Apis.Core.xml", "lib/portable-net45+sl50+netcore45+wpa81+wp8/Google.Apis.Core.dll", "lib/portable-net45+sl50+netcore45+wpa81+wp8/Google.Apis.Core.pdb", - "lib/portable-net45+sl50+netcore45+wpa81+wp8/Google.Apis.Core.xml", - "License.txt" + "lib/portable-net45+sl50+netcore45+wpa81+wp8/Google.Apis.Core.xml" ] }, "Ix-Async/1.2.5": { - "type": "package", "sha512": "8EXO8q7cpDUH9G2q+UOPOO/6uZ9aN7mx/4xjFIfkp+qLWVJiYuglkRhjY8Ggs2CucXzHR8GHnovJKB5yQoYaJg==", + "type": "package", "files": [ "Ix-Async.1.2.5.nupkg", "Ix-Async.1.2.5.nupkg.sha512", "Ix-Async.nuspec", - "lib/net40/System.Interactive.Async.dll", "lib/net40/System.Interactive.Async.XML", - "lib/net45/System.Interactive.Async.dll", + "lib/net40/System.Interactive.Async.dll", "lib/net45/System.Interactive.Async.XML", - "lib/portable-windows8+net45+wp8/System.Interactive.Async.dll", - "lib/portable-windows8+net45+wp8/System.Interactive.Async.XML" + "lib/net45/System.Interactive.Async.dll", + "lib/portable-windows8+net45+wp8/System.Interactive.Async.XML", + "lib/portable-windows8+net45+wp8/System.Interactive.Async.dll" ] }, "jQuery/1.6.4": { - "type": "package", "sha512": "8RzoZQFeFYL/cINRXksLWyl8D5TKctZ/2G8hrlOLLM5OgFNI9h3t3l5tB+BBbsBUxaPUageVe0p9ruU5jrFeow==", + "type": "package", "files": [ + "Content/Scripts/jquery-1.6.4-vsdoc.js", "Content/Scripts/jquery-1.6.4.js", "Content/Scripts/jquery-1.6.4.min.js", - "Content/Scripts/jquery-1.6.4-vsdoc.js", - "jQuery.1.6.4.nupkg", - "jQuery.1.6.4.nupkg.sha512", - "jQuery.nuspec", "Tools/install.ps1", "Tools/jquery-1.6.4-vsdoc-para.js", - "Tools/uninstall.ps1" + "Tools/uninstall.ps1", + "jQuery.1.6.4.nupkg", + "jQuery.1.6.4.nupkg.sha512", + "jQuery.nuspec" ] }, "log4net/2.0.3": { - "type": "package", "sha512": "rxMHzK5efGPo5XtRnuUGO4tfW5l74Aji6kVmtMAt2SgcB5PHBNtNY7yj2LCI2VtKrLPO7kCKR6kH6lIZggq3Gg==", + "type": "package", "files": [ "lib/net10-full/log4net.dll", "lib/net10-full/log4net.xml", @@ -8810,13 +3154,18 @@ ] }, "MailKit/1.3.0-beta7": { - "type": "package", "sha512": "LalD+6uE97WdfZ9Ohmz2ZeYbPXzql4VNazGO/e9PLMENKNPwENc4eSr8v/r+mHY3EsRsAH34DCkub8rA4Zwyrw==", + "type": "package", "files": [ - "lib/dotnet5.5/MailKit.dll", - "lib/dotnet5.5/MailKit.xml", + "MailKit.1.3.0-beta7.nupkg", + "MailKit.1.3.0-beta7.nupkg.sha512", + "MailKit.nuspec", "lib/MonoAndroid10/MailKit.dll", "lib/MonoAndroid10/MailKit.xml", + "lib/Xamarin.iOS10/MailKit.dll", + "lib/Xamarin.iOS10/MailKit.xml", + "lib/dotnet5.5/MailKit.dll", + "lib/dotnet5.5/MailKit.xml", "lib/net40/MailKit.dll", "lib/net40/MailKit.xml", "lib/net45/MailKit.dll", @@ -8826,288 +3175,286 @@ "lib/win81/MailKit.dll", "lib/win81/MailKit.xml", "lib/wpa81/MailKit.dll", - "lib/wpa81/MailKit.xml", - "lib/Xamarin.iOS10/MailKit.dll", - "lib/Xamarin.iOS10/MailKit.xml", - "MailKit.1.3.0-beta7.nupkg", - "MailKit.1.3.0-beta7.nupkg.sha512", - "MailKit.nuspec" + "lib/wpa81/MailKit.xml" ] }, "MarkdownDeep-av.NET/1.5.2": { - "type": "package", "sha512": "yhAFPv6eKhE62BgqvrpGRVbEhH9/cWypN2wwgtdCSOBnxtL/Hz7T2mlrx7UtvR+O2RXZZu6t4AmnjnN28fcZiw==", + "type": "package", "files": [ - "lib/dnxcore50/MarkdownDeep.dll", - "lib/net451/MarkdownDeep.dll", "MarkdownDeep-av.NET.1.5.2.nupkg", "MarkdownDeep-av.NET.1.5.2.nupkg.sha512", - "MarkdownDeep-av.NET.nuspec" + "MarkdownDeep-av.NET.nuspec", + "lib/dnxcore50/MarkdownDeep.dll", + "lib/net451/MarkdownDeep.dll" ] }, "Microsoft.AspNet.Antiforgery/1.0.0-rc1-final": { - "type": "package", "sha512": "HpEYyzfyrnj7+13Mnn/6CgdfDVxTcg6J7PsO8rCysdrGdehbupsuZoQWerqoDRBtb0UMp0U3g0WnmAwgE2tqzA==", + "type": "package", "files": [ + "Microsoft.AspNet.Antiforgery.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Antiforgery.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Antiforgery.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Antiforgery.dll", "lib/dotnet5.4/Microsoft.AspNet.Antiforgery.xml", "lib/net451/Microsoft.AspNet.Antiforgery.dll", - "lib/net451/Microsoft.AspNet.Antiforgery.xml", - "Microsoft.AspNet.Antiforgery.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Antiforgery.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Antiforgery.nuspec" + "lib/net451/Microsoft.AspNet.Antiforgery.xml" ] }, "Microsoft.AspNet.Authentication/1.0.0-rc1-final": { - "type": "package", "sha512": "sdFCeQlwkJXZ1KHsRvf7ewNEWkEeKYNpcEKKC0D+WNUvLliziLc7cMH+6sjNmTU3FgGjGrSk4WjGQMhsOHCrDQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Authentication.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authentication.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authentication.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Authentication.dll", "lib/dotnet5.4/Microsoft.AspNet.Authentication.xml", "lib/net451/Microsoft.AspNet.Authentication.dll", - "lib/net451/Microsoft.AspNet.Authentication.xml", - "Microsoft.AspNet.Authentication.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authentication.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authentication.nuspec" + "lib/net451/Microsoft.AspNet.Authentication.xml" ] }, "Microsoft.AspNet.Authentication.Cookies/1.0.0-rc1-final": { - "type": "package", "sha512": "vjeSG8Z5i5Kqo1nC7wW1BO+YMk+gs/AVVJlmyF7EGgiUBtAAPkrgjxSabQqvFhPgpEFledUQ6gkhKXgr4WrMtw==", + "type": "package", "files": [ + "Microsoft.AspNet.Authentication.Cookies.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authentication.Cookies.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authentication.Cookies.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Authentication.Cookies.dll", "lib/dotnet5.4/Microsoft.AspNet.Authentication.Cookies.xml", "lib/net451/Microsoft.AspNet.Authentication.Cookies.dll", - "lib/net451/Microsoft.AspNet.Authentication.Cookies.xml", - "Microsoft.AspNet.Authentication.Cookies.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authentication.Cookies.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authentication.Cookies.nuspec" + "lib/net451/Microsoft.AspNet.Authentication.Cookies.xml" ] }, "Microsoft.AspNet.Authentication.Facebook/1.0.0-rc1-final": { - "type": "package", "sha512": "jnxn+FmMl5hteVj/9E38XLQq3ksJwTretsLJKY7qiIIpDQJqhsEPzCbop+vSalnYMMoHaFOdixWmizIQrmlOfQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Authentication.Facebook.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authentication.Facebook.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authentication.Facebook.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Authentication.Facebook.dll", "lib/dotnet5.4/Microsoft.AspNet.Authentication.Facebook.xml", "lib/net451/Microsoft.AspNet.Authentication.Facebook.dll", - "lib/net451/Microsoft.AspNet.Authentication.Facebook.xml", - "Microsoft.AspNet.Authentication.Facebook.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authentication.Facebook.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authentication.Facebook.nuspec" + "lib/net451/Microsoft.AspNet.Authentication.Facebook.xml" ] }, "Microsoft.AspNet.Authentication.JwtBearer/1.0.0-rc1-final": { - "type": "package", "sha512": "pkgJ9xKl2RY5j6alvpnLWNGpnM7qpFpcdQSSxjOFI0yWDYxkqagwghdisC/lVgRiSDzh3tm1asjpMbt+6+sNOg==", + "type": "package", "files": [ + "Microsoft.AspNet.Authentication.JwtBearer.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authentication.JwtBearer.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authentication.JwtBearer.nuspec", "lib/dnx451/Microsoft.AspNet.Authentication.JwtBearer.dll", "lib/dnx451/Microsoft.AspNet.Authentication.JwtBearer.xml", "lib/dnxcore50/Microsoft.AspNet.Authentication.JwtBearer.dll", - "lib/dnxcore50/Microsoft.AspNet.Authentication.JwtBearer.xml", - "Microsoft.AspNet.Authentication.JwtBearer.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authentication.JwtBearer.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authentication.JwtBearer.nuspec" + "lib/dnxcore50/Microsoft.AspNet.Authentication.JwtBearer.xml" ] }, "Microsoft.AspNet.Authentication.OAuth/1.0.0-rc1-final": { - "type": "package", "sha512": "3h2Mz/ObM1pQRDDkkK4roI1Y6n6XlTQGsLxbeMQ6aGJZCYYnZhCrp6UN4CWktd3xBrLUdaRYMH1r94+0wjCqAg==", + "type": "package", "files": [ + "Microsoft.AspNet.Authentication.OAuth.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authentication.OAuth.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authentication.OAuth.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Authentication.OAuth.dll", "lib/dotnet5.4/Microsoft.AspNet.Authentication.OAuth.xml", "lib/net451/Microsoft.AspNet.Authentication.OAuth.dll", - "lib/net451/Microsoft.AspNet.Authentication.OAuth.xml", - "Microsoft.AspNet.Authentication.OAuth.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authentication.OAuth.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authentication.OAuth.nuspec" + "lib/net451/Microsoft.AspNet.Authentication.OAuth.xml" ] }, "Microsoft.AspNet.Authentication.OpenIdConnect/1.0.0-rc1-final": { - "type": "package", "sha512": "t23VFfjomKBH7bbm0aT8Ht0QqvU5ECclpdID4lBGJ2YGEVz4t1lqxIeOO59VaSnae8LHZtoRywqOwFssF/1OQA==", + "type": "package", "files": [ + "Microsoft.AspNet.Authentication.OpenIdConnect.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authentication.OpenIdConnect.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authentication.OpenIdConnect.nuspec", "lib/dnx451/Microsoft.AspNet.Authentication.OpenIdConnect.dll", "lib/dnx451/Microsoft.AspNet.Authentication.OpenIdConnect.xml", "lib/dnxcore50/Microsoft.AspNet.Authentication.OpenIdConnect.dll", - "lib/dnxcore50/Microsoft.AspNet.Authentication.OpenIdConnect.xml", - "Microsoft.AspNet.Authentication.OpenIdConnect.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authentication.OpenIdConnect.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authentication.OpenIdConnect.nuspec" + "lib/dnxcore50/Microsoft.AspNet.Authentication.OpenIdConnect.xml" ] }, "Microsoft.AspNet.Authentication.Twitter/1.0.0-rc1-final": { - "type": "package", "sha512": "kp0mcXaj0Vx+XY5Fwr/rDZBqs9yjzcwS6+KY3Dtk7UnmAuzVJ1Ld7/gLKkXXFzDyIh++lWfckRFQtVvV4kuydA==", + "type": "package", "files": [ + "Microsoft.AspNet.Authentication.Twitter.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authentication.Twitter.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authentication.Twitter.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Authentication.Twitter.dll", "lib/dotnet5.4/Microsoft.AspNet.Authentication.Twitter.xml", "lib/net451/Microsoft.AspNet.Authentication.Twitter.dll", - "lib/net451/Microsoft.AspNet.Authentication.Twitter.xml", - "Microsoft.AspNet.Authentication.Twitter.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authentication.Twitter.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authentication.Twitter.nuspec" + "lib/net451/Microsoft.AspNet.Authentication.Twitter.xml" ] }, "Microsoft.AspNet.Authorization/1.0.0-rc1-final": { - "type": "package", "sha512": "zXQ4VHNDQkWzNpI05jt3laIHSlNIqROFuSbZPV7wprVi43sgeZSn9gBW5rQNcedODgsEvmsIMzl73mXzKf3TTA==", + "type": "package", "files": [ + "Microsoft.AspNet.Authorization.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Authorization.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Authorization.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Authorization.dll", "lib/dotnet5.4/Microsoft.AspNet.Authorization.xml", "lib/net451/Microsoft.AspNet.Authorization.dll", - "lib/net451/Microsoft.AspNet.Authorization.xml", - "Microsoft.AspNet.Authorization.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Authorization.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Authorization.nuspec" + "lib/net451/Microsoft.AspNet.Authorization.xml" ] }, "Microsoft.AspNet.Cors/6.0.0-rc1-final": { - "type": "package", "sha512": "3wfAJBFtBgtYI03Oo2MHXn1bH4PgRjGjHtZ6onjuT7QevAfAgvxuqEw59r8mhW9rBz3abrgcbBwndEFef0DbCg==", + "type": "package", "files": [ + "Microsoft.AspNet.Cors.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Cors.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Cors.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Cors.dll", "lib/dotnet5.4/Microsoft.AspNet.Cors.xml", "lib/net451/Microsoft.AspNet.Cors.dll", - "lib/net451/Microsoft.AspNet.Cors.xml", - "Microsoft.AspNet.Cors.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Cors.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Cors.nuspec" + "lib/net451/Microsoft.AspNet.Cors.xml" ] }, "Microsoft.AspNet.Cryptography.Internal/1.0.0-rc1-final": { - "type": "package", "sha512": "gQBLMaEd0ZRntSBjuWFJ6Qu3BKO6SORWA3Iv/Rhd4oEB1O8Mzdk3nHAyWyo/i8GhE740sajdwT8yXZTm3fzglg==", + "type": "package", "files": [ + "Microsoft.AspNet.Cryptography.Internal.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Cryptography.Internal.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Cryptography.Internal.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Cryptography.Internal.dll", "lib/dotnet5.4/Microsoft.AspNet.Cryptography.Internal.xml", "lib/net451/Microsoft.AspNet.Cryptography.Internal.dll", - "lib/net451/Microsoft.AspNet.Cryptography.Internal.xml", - "Microsoft.AspNet.Cryptography.Internal.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Cryptography.Internal.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Cryptography.Internal.nuspec" + "lib/net451/Microsoft.AspNet.Cryptography.Internal.xml" ] }, "Microsoft.AspNet.Cryptography.KeyDerivation/1.0.0-rc1-final": { - "type": "package", "sha512": "a0HOA+i0gEY5SIzJZX4QXuj+hY6C7NT3t60EwreWYPAy/rruoxlkarU8H9oHwtatT2/FjC8kdMNQS72y1I/5KQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Cryptography.KeyDerivation.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Cryptography.KeyDerivation.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Cryptography.KeyDerivation.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Cryptography.KeyDerivation.dll", "lib/dotnet5.4/Microsoft.AspNet.Cryptography.KeyDerivation.xml", "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.dll", - "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.xml", - "Microsoft.AspNet.Cryptography.KeyDerivation.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Cryptography.KeyDerivation.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Cryptography.KeyDerivation.nuspec" + "lib/net451/Microsoft.AspNet.Cryptography.KeyDerivation.xml" ] }, "Microsoft.AspNet.DataProtection/1.0.0-rc1-final": { - "type": "package", "sha512": "HKcaIDRCz5KWkhmRiRs9mjZupJbdP3+Z3RQKdqwa6ZsXsO0ZUnmfpdYp6IFG69rTznmoSKjKJpcnvRA7w6psyA==", + "type": "package", "files": [ + "Microsoft.AspNet.DataProtection.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.DataProtection.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.DataProtection.nuspec", "lib/dotnet5.4/Microsoft.AspNet.DataProtection.dll", "lib/dotnet5.4/Microsoft.AspNet.DataProtection.xml", "lib/net451/Microsoft.AspNet.DataProtection.dll", - "lib/net451/Microsoft.AspNet.DataProtection.xml", - "Microsoft.AspNet.DataProtection.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.DataProtection.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.DataProtection.nuspec" + "lib/net451/Microsoft.AspNet.DataProtection.xml" ] }, "Microsoft.AspNet.DataProtection.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "rNCftGtK32L1R8Y3JDl31fPtYI/wppN3xngBtcQ5R8DZBfSKzabDWre95feBIKWjcPqE+P/Y7n6ax8oGFcVSZw==", + "type": "package", "files": [ + "Microsoft.AspNet.DataProtection.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.DataProtection.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.DataProtection.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.DataProtection.Abstractions.dll", "lib/dotnet5.4/Microsoft.AspNet.DataProtection.Abstractions.xml", "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.dll", - "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.xml", - "Microsoft.AspNet.DataProtection.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.DataProtection.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.DataProtection.Abstractions.nuspec" + "lib/net451/Microsoft.AspNet.DataProtection.Abstractions.xml" ] }, "Microsoft.AspNet.DataProtection.SystemWeb/1.0.0-rc1-final": { - "type": "package", "sha512": "SMCq4lwr8Vf9rMJ0HSdXux5dWILKGzmN0XuL6Uu2+aqofSeFlDhlTRg/QyiThYeFzREllLZ+iw/0P3GAhhgB0w==", + "type": "package", "files": [ - "content/net451/web.config.transform", - "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.dll", - "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.xml", "Microsoft.AspNet.DataProtection.SystemWeb.1.0.0-rc1-final.nupkg", "Microsoft.AspNet.DataProtection.SystemWeb.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.DataProtection.SystemWeb.nuspec" + "Microsoft.AspNet.DataProtection.SystemWeb.nuspec", + "content/net451/web.config.transform", + "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.dll", + "lib/net451/Microsoft.AspNet.DataProtection.SystemWeb.xml" ] }, "Microsoft.AspNet.Diagnostics/1.0.0-rc1-final": { - "type": "package", "sha512": "PlLhXpe74DUMEanyFNvo+A96zD465usPOxu2iAqREnfcpagNJY4dn6uQxDE04BY6XcqPaYAYcrZYyKRfn/pTIg==", + "type": "package", "files": [ + "Microsoft.AspNet.Diagnostics.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Diagnostics.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Diagnostics.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.dll", "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.xml", "lib/net451/Microsoft.AspNet.Diagnostics.dll", - "lib/net451/Microsoft.AspNet.Diagnostics.xml", - "Microsoft.AspNet.Diagnostics.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Diagnostics.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Diagnostics.nuspec" + "lib/net451/Microsoft.AspNet.Diagnostics.xml" ] }, "Microsoft.AspNet.Diagnostics.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "nr/aKzLzXFOj9KAXTh63uzxPGN4It04vh3dqnIHzKk6Bf/0kPYv9Qw3fwLQy5mc0Cka/soz5ZMdPp8IQk2BRQQ==", + "type": "package", "files": [ - "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.Abstractions.dll", - "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.Abstractions.xml", - "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.dll", - "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.xml", "Microsoft.AspNet.Diagnostics.Abstractions.1.0.0-rc1-final.nupkg", "Microsoft.AspNet.Diagnostics.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Diagnostics.Abstractions.nuspec" + "Microsoft.AspNet.Diagnostics.Abstractions.nuspec", + "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.Abstractions.dll", + "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.Abstractions.xml", + "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.dll", + "lib/net451/Microsoft.AspNet.Diagnostics.Abstractions.xml" ] }, "Microsoft.AspNet.Diagnostics.Entity/7.0.0-rc1-final": { - "type": "package", "sha512": "hlOWYlYXpVSEM4wcTzNwZKvJWGUgkZQjOG12FkJFIEMyd8qT8jS20kp92kT2XeU8SBxb1kUAnTBdtOr5VRI+hQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Diagnostics.Entity.7.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Diagnostics.Entity.7.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Diagnostics.Entity.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.Entity.dll", "lib/dotnet5.4/Microsoft.AspNet.Diagnostics.Entity.xml", "lib/net451/Microsoft.AspNet.Diagnostics.Entity.dll", - "lib/net451/Microsoft.AspNet.Diagnostics.Entity.xml", - "Microsoft.AspNet.Diagnostics.Entity.7.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Diagnostics.Entity.7.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Diagnostics.Entity.nuspec" + "lib/net451/Microsoft.AspNet.Diagnostics.Entity.xml" ] }, "Microsoft.AspNet.FileProviders.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "Tv6YJk78cH+gFipRNjeMpzzUg3t4BQiS0xYVlv/8gVNl4sI6ytAMYYfIbx8pCacIRH5Nx/Tw9GVn28eyw+JZfA==", + "type": "package", "files": [ + "Microsoft.AspNet.FileProviders.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.FileProviders.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.FileProviders.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.FileProviders.Abstractions.dll", "lib/dotnet5.4/Microsoft.AspNet.FileProviders.Abstractions.xml", "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.dll", - "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.xml", - "Microsoft.AspNet.FileProviders.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.FileProviders.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.FileProviders.Abstractions.nuspec" + "lib/net451/Microsoft.AspNet.FileProviders.Abstractions.xml" ] }, "Microsoft.AspNet.FileProviders.Physical/1.0.0-rc1-final": { - "type": "package", "sha512": "Ni5o7X21cN97krdkg3F77F5app0KpLwdpHbxdpwqaMjhMKYcmNDcyZB8Ke/qgbSMqHRwT3aQVhgEp/iJTbgl6g==", + "type": "package", "files": [ + "Microsoft.AspNet.FileProviders.Physical.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.FileProviders.Physical.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.FileProviders.Physical.nuspec", "lib/dotnet5.4/Microsoft.AspNet.FileProviders.Physical.dll", "lib/dotnet5.4/Microsoft.AspNet.FileProviders.Physical.xml", "lib/net451/Microsoft.AspNet.FileProviders.Physical.dll", - "lib/net451/Microsoft.AspNet.FileProviders.Physical.xml", - "Microsoft.AspNet.FileProviders.Physical.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.FileProviders.Physical.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.FileProviders.Physical.nuspec" + "lib/net451/Microsoft.AspNet.FileProviders.Physical.xml" ] }, "Microsoft.AspNet.Hosting/1.0.0-rc1-final": { - "type": "package", "sha512": "6ZVZK5Ql+z6UeVOBcXCRLahcAd/NKdMAK17JBZWGZqqmxKO0LtQMdb6drb9H4nBM3/a8vbhd+23wxzyIfoCLQQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Hosting.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Hosting.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Hosting.nuspec", "lib/dnx451/Microsoft.AspNet.Hosting.dll", "lib/dnx451/Microsoft.AspNet.Hosting.xml", "lib/dnxcore50/Microsoft.AspNet.Hosting.dll", @@ -9115,393 +3462,406 @@ "lib/dotnet5.4/Microsoft.AspNet.Hosting.dll", "lib/dotnet5.4/Microsoft.AspNet.Hosting.xml", "lib/net451/Microsoft.AspNet.Hosting.dll", - "lib/net451/Microsoft.AspNet.Hosting.xml", - "Microsoft.AspNet.Hosting.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Hosting.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Hosting.nuspec" + "lib/net451/Microsoft.AspNet.Hosting.xml" ] }, "Microsoft.AspNet.Hosting.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "07N5rzYcsjkLgwoI923FcAvvf7167qhLgCExXwYYkdZUIJQzneRG0DqZJTm6qpnaD5igf4FM9F+eh2m7y5NFbg==", + "type": "package", "files": [ + "Microsoft.AspNet.Hosting.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Hosting.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Hosting.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Hosting.Abstractions.dll", "lib/dotnet5.4/Microsoft.AspNet.Hosting.Abstractions.xml", "lib/net451/Microsoft.AspNet.Hosting.Abstractions.dll", - "lib/net451/Microsoft.AspNet.Hosting.Abstractions.xml", - "Microsoft.AspNet.Hosting.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Hosting.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Hosting.Abstractions.nuspec" + "lib/net451/Microsoft.AspNet.Hosting.Abstractions.xml" ] }, "Microsoft.AspNet.Hosting.Server.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "55ovPKPLsLvXsZ2xxtCOkQXmLwrE5iMUXe1y3A3Y/DCcI2u9VBJezu1y2EPYmZCM+uP/Y/BaQm68AWg2r8RV5w==", + "type": "package", "files": [ + "Microsoft.AspNet.Hosting.Server.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Hosting.Server.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Hosting.Server.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Hosting.Server.Abstractions.dll", "lib/dotnet5.4/Microsoft.AspNet.Hosting.Server.Abstractions.xml", "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.dll", - "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.xml", - "Microsoft.AspNet.Hosting.Server.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Hosting.Server.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Hosting.Server.Abstractions.nuspec" + "lib/net451/Microsoft.AspNet.Hosting.Server.Abstractions.xml" ] }, "Microsoft.AspNet.Html.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "49aE5EnPr4/IBhrI5fH43o20GgqPCOZqcTDf+Ya8iVSIeorhj2Pn9e12DXqFPTKPHD7+H44K2MaU2lw1/uMiKQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Html.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Html.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Html.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Html.Abstractions.dll", "lib/dotnet5.4/Microsoft.AspNet.Html.Abstractions.xml", "lib/net451/Microsoft.AspNet.Html.Abstractions.dll", - "lib/net451/Microsoft.AspNet.Html.Abstractions.xml", - "Microsoft.AspNet.Html.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Html.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Html.Abstractions.nuspec" + "lib/net451/Microsoft.AspNet.Html.Abstractions.xml" ] }, "Microsoft.AspNet.Http/1.0.0-rc1-final": { - "type": "package", "sha512": "2vVd6xlfDKxl7pln5VOSczVo5bdJK6VLF6LR62Tb+le6e0COju7diAPHujFcXQlX/eLq2GrctN5vbIMeQ6vRTg==", + "type": "package", "files": [ + "Microsoft.AspNet.Http.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Http.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Http.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Http.dll", "lib/dotnet5.4/Microsoft.AspNet.Http.xml", "lib/net451/Microsoft.AspNet.Http.dll", - "lib/net451/Microsoft.AspNet.Http.xml", - "Microsoft.AspNet.Http.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Http.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Http.nuspec" + "lib/net451/Microsoft.AspNet.Http.xml" ] }, "Microsoft.AspNet.Http.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "sfzc1WJMl8wGCF+rChVfJ7otT6tTv24RNXUej2r8tlQ2RDNnAozYyGb0SCW2mxpHrC31On99Wt0rksgF0c2WUw==", + "type": "package", "files": [ + "Microsoft.AspNet.Http.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Http.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Http.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Http.Abstractions.dll", "lib/dotnet5.4/Microsoft.AspNet.Http.Abstractions.xml", "lib/net451/Microsoft.AspNet.Http.Abstractions.dll", - "lib/net451/Microsoft.AspNet.Http.Abstractions.xml", - "Microsoft.AspNet.Http.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Http.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Http.Abstractions.nuspec" + "lib/net451/Microsoft.AspNet.Http.Abstractions.xml" ] }, "Microsoft.AspNet.Http.Extensions/1.0.0-rc1-final": { - "type": "package", "sha512": "rsjbxD9W6NfqP0WNHMRyetIh6ZoKRbK1ea0V5xWdVAx53WdvgBy0HmkSwXt506+xU65jjZP19F4Ua4YjZdPHfQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Http.Extensions.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Http.Extensions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Http.Extensions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Http.Extensions.dll", "lib/dotnet5.4/Microsoft.AspNet.Http.Extensions.xml", "lib/net451/Microsoft.AspNet.Http.Extensions.dll", - "lib/net451/Microsoft.AspNet.Http.Extensions.xml", - "Microsoft.AspNet.Http.Extensions.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Http.Extensions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Http.Extensions.nuspec" + "lib/net451/Microsoft.AspNet.Http.Extensions.xml" ] }, "Microsoft.AspNet.Http.Features/1.0.0-rc1-final": { - "type": "package", "sha512": "WlscfdAvN8XaaK1iv1Iewp5emei7+0SlXNkUh7kMJpeaS6K0GhwNmwqZR6VrT1oN+Maw98nEONHS34/suqQwOA==", + "type": "package", "files": [ + "Microsoft.AspNet.Http.Features.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Http.Features.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Http.Features.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Http.Features.dll", "lib/dotnet5.4/Microsoft.AspNet.Http.Features.xml", "lib/net451/Microsoft.AspNet.Http.Features.dll", - "lib/net451/Microsoft.AspNet.Http.Features.xml", - "Microsoft.AspNet.Http.Features.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Http.Features.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Http.Features.nuspec" + "lib/net451/Microsoft.AspNet.Http.Features.xml" ] }, "Microsoft.AspNet.Identity/3.0.0-rc1-final": { - "type": "package", "sha512": "ACPci5zUktgGFqdZ48dWexty24lROTEW/MK3LxIDe88zssLiqMhHrIndp4G/1vafmUfL+9lTw7oda6GRD53cEg==", + "type": "package", "files": [ + "Microsoft.AspNet.Identity.3.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Identity.3.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Identity.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Identity.dll", "lib/dotnet5.4/Microsoft.AspNet.Identity.xml", "lib/net451/Microsoft.AspNet.Identity.dll", - "lib/net451/Microsoft.AspNet.Identity.xml", - "Microsoft.AspNet.Identity.3.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Identity.3.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Identity.nuspec" + "lib/net451/Microsoft.AspNet.Identity.xml" ] }, "Microsoft.AspNet.Identity.EntityFramework/3.0.0-rc1-final": { - "type": "package", "sha512": "XayUdpI6mRgL4e9kowTxlYURvDGNj7FBhqbOn6uxvQwwD7gltYzKL3T07nCeSzxR5m2sJ+IvrJCMPihKrtuR5w==", + "type": "package", "files": [ + "Microsoft.AspNet.Identity.EntityFramework.3.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Identity.EntityFramework.3.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Identity.EntityFramework.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Identity.EntityFramework.dll", "lib/dotnet5.4/Microsoft.AspNet.Identity.EntityFramework.xml", "lib/net451/Microsoft.AspNet.Identity.EntityFramework.dll", - "lib/net451/Microsoft.AspNet.Identity.EntityFramework.xml", - "Microsoft.AspNet.Identity.EntityFramework.3.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Identity.EntityFramework.3.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Identity.EntityFramework.nuspec" + "lib/net451/Microsoft.AspNet.Identity.EntityFramework.xml" ] }, "Microsoft.AspNet.IISPlatformHandler/1.0.0-rc1-final": { - "type": "package", "sha512": "scDY0KQZnOvQTYDd6InIFhn4QnF5UxLtV7VoQXOlpsaEUQ0c6jDVoHvL4ylUy5zcKJkjRDUy/B7Q8TDk05kl2w==", + "type": "package", "files": [ + "Microsoft.AspNet.IISPlatformHandler.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.IISPlatformHandler.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.IISPlatformHandler.nuspec", "lib/dotnet5.4/Microsoft.AspNet.IISPlatformHandler.dll", "lib/dotnet5.4/Microsoft.AspNet.IISPlatformHandler.xml", "lib/net451/Microsoft.AspNet.IISPlatformHandler.dll", - "lib/net451/Microsoft.AspNet.IISPlatformHandler.xml", - "Microsoft.AspNet.IISPlatformHandler.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.IISPlatformHandler.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.IISPlatformHandler.nuspec" + "lib/net451/Microsoft.AspNet.IISPlatformHandler.xml" ] }, "Microsoft.AspNet.JsonPatch/1.0.0-rc1-final": { - "type": "package", "sha512": "ymoIERwLlkXXffpKpFHZ6sjKz8HPwPqAbOnia1H3RAhyTYNJkahW6qWNXF96Fd66I1+m88pApWku+Ld0WD94Sg==", + "type": "package", "files": [ + "Microsoft.AspNet.JsonPatch.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.JsonPatch.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.JsonPatch.nuspec", "lib/dotnet5.4/Microsoft.AspNet.JsonPatch.dll", "lib/dotnet5.4/Microsoft.AspNet.JsonPatch.xml", "lib/net451/Microsoft.AspNet.JsonPatch.dll", - "lib/net451/Microsoft.AspNet.JsonPatch.xml", - "Microsoft.AspNet.JsonPatch.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.JsonPatch.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.JsonPatch.nuspec" + "lib/net451/Microsoft.AspNet.JsonPatch.xml" ] }, "Microsoft.AspNet.Localization/1.0.0-rc1-final": { - "type": "package", "sha512": "ImoAQSIWbZifALakJI5kR0l5XOBixrnnR7+7RoNfFQFvPmM6lqJv2mNEYgkpFGea/hVdfHPfsWErb1oVVnYMaw==", + "type": "package", "files": [ + "Microsoft.AspNet.Localization.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Localization.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Localization.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Localization.dll", "lib/dotnet5.4/Microsoft.AspNet.Localization.xml", "lib/net451/Microsoft.AspNet.Localization.dll", - "lib/net451/Microsoft.AspNet.Localization.xml", - "Microsoft.AspNet.Localization.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Localization.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Localization.nuspec" + "lib/net451/Microsoft.AspNet.Localization.xml" ] }, "Microsoft.AspNet.Mvc/6.0.0-rc1-final": { - "type": "package", "sha512": "gKQUI2L58PibL4v/BCsML5RvpcAWQ7gNCn2xQVhLvt2fGDfRAYIr2SnalRJ0M8m+hdHDNtWydfaVrOC799zKtQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.xml", "lib/net451/Microsoft.AspNet.Mvc.dll", - "lib/net451/Microsoft.AspNet.Mvc.xml", - "Microsoft.AspNet.Mvc.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.xml" ] }, "Microsoft.AspNet.Mvc.Abstractions/6.0.0-rc1-final": { - "type": "package", "sha512": "xJH5D+h/C6KFA3XjUshgpMEznL7h018f/G4exZY76HhCfABMHmoqb5xrGKvwjKlaCwnSWPDTHeOowsGPmYZ6yQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.Abstractions.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.Abstractions.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Abstractions.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Abstractions.xml", "lib/net451/Microsoft.AspNet.Mvc.Abstractions.dll", - "lib/net451/Microsoft.AspNet.Mvc.Abstractions.xml", - "Microsoft.AspNet.Mvc.Abstractions.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.Abstractions.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.Abstractions.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.Abstractions.xml" ] }, "Microsoft.AspNet.Mvc.ApiExplorer/6.0.0-rc1-final": { - "type": "package", "sha512": "cFXQLFGtg8Dv8ngf42zxkqZq9jt0eV73bSFcRlyJENP+M7exk1ebCHjPt5J1wXZQkSsAmzj7JieHBEad5G3TxQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.ApiExplorer.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.ApiExplorer.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.ApiExplorer.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.ApiExplorer.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.ApiExplorer.xml", "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.dll", - "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.xml", - "Microsoft.AspNet.Mvc.ApiExplorer.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.ApiExplorer.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.ApiExplorer.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.ApiExplorer.xml" ] }, "Microsoft.AspNet.Mvc.Core/6.0.0-rc1-final": { - "type": "package", "sha512": "s4RFVnKx+c49vxu0rK33kwaff9TydQI/LI9ApgAyfZPlrjDvmzzPyKVGpfKBh682scnllaUFeOV+hL9Q6a1zJw==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.Core.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Core.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Core.xml", "lib/net451/Microsoft.AspNet.Mvc.Core.dll", - "lib/net451/Microsoft.AspNet.Mvc.Core.xml", - "Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.Core.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.Core.xml" ] }, "Microsoft.AspNet.Mvc.Cors/6.0.0-rc1-final": { - "type": "package", "sha512": "HGAda11lbt59OxaFjYtzy3DOEL6VoOH4vrMJ7dGnSUbrv8hk+lbk5EUebhFxv7KcKPuoka4pdZB3CPH/TTnahg==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.Cors.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.Cors.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.Cors.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Cors.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Cors.xml", "lib/net451/Microsoft.AspNet.Mvc.Cors.dll", - "lib/net451/Microsoft.AspNet.Mvc.Cors.xml", - "Microsoft.AspNet.Mvc.Cors.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.Cors.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.Cors.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.Cors.xml" ] }, "Microsoft.AspNet.Mvc.DataAnnotations/6.0.0-rc1-final": { - "type": "package", "sha512": "1PXLllWma1/uXZJyYUWkhvMw87udjB4AfLMhVIGz2mF3KOPQgzRcdS8Eqze4ypty5+Up2QvIHBUjY2H79e2ezQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.DataAnnotations.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.DataAnnotations.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.DataAnnotations.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.DataAnnotations.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.DataAnnotations.xml", "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.dll", - "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.xml", - "Microsoft.AspNet.Mvc.DataAnnotations.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.DataAnnotations.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.DataAnnotations.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.DataAnnotations.xml" ] }, "Microsoft.AspNet.Mvc.Formatters.Json/6.0.0-rc1-final": { - "type": "package", "sha512": "orkj2uvOhyR+OuTTuewPw5F3Zi6VlU3UV3aA18wy00CwxtPJCJ4IE+J0EmLTMc/r6JGIjTF0pgABsgD0EzhrPg==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.Formatters.Json.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.Formatters.Json.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.Formatters.Json.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Formatters.Json.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Formatters.Json.xml", "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.dll", - "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.xml", - "Microsoft.AspNet.Mvc.Formatters.Json.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.Formatters.Json.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.Formatters.Json.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.Formatters.Json.xml" ] }, "Microsoft.AspNet.Mvc.Localization/6.0.0-rc1-final": { - "type": "package", "sha512": "G5omyQF/PJZmUrhnuaXxvIpfkp8OgU1fwwBZfsnlaaJd7h8gOhkQspdbXQB+UP5lGO1J/ypFUOYuYmVRKmEjyg==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.Localization.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.Localization.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.Localization.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Localization.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Localization.xml", "lib/net451/Microsoft.AspNet.Mvc.Localization.dll", - "lib/net451/Microsoft.AspNet.Mvc.Localization.xml", - "Microsoft.AspNet.Mvc.Localization.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.Localization.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.Localization.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.Localization.xml" ] }, "Microsoft.AspNet.Mvc.Razor/6.0.0-rc1-final": { - "type": "package", "sha512": "zkC6r/If5OoGsDJLkDY+O16K+WirFi2ZBgPbG8cHr3ybnlR4/u8S0p9bqnOd191kibxAAYKYfafVg+NApv8Vig==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.Razor.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.Razor.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.Razor.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Razor.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Razor.xml", "lib/net451/Microsoft.AspNet.Mvc.Razor.dll", - "lib/net451/Microsoft.AspNet.Mvc.Razor.xml", - "Microsoft.AspNet.Mvc.Razor.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.Razor.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.Razor.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.Razor.xml" ] }, "Microsoft.AspNet.Mvc.Razor.Host/6.0.0-rc1-final": { - "type": "package", "sha512": "kYvYr+IAe91NgHPARMkGSLQzep3Zs7gHJCtAhslcmU8cDJaodoUxVxJikiBX9HmZIzKf9uENT8Et5JCWpQFqRA==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.Razor.Host.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.Razor.Host.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.Razor.Host.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Razor.Host.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.Razor.Host.xml", "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.dll", - "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.xml", - "Microsoft.AspNet.Mvc.Razor.Host.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.Razor.Host.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.Razor.Host.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.Razor.Host.xml" ] }, "Microsoft.AspNet.Mvc.TagHelpers/6.0.0-rc1-final": { - "type": "package", "sha512": "zcoDzmKSMdOVUQHQZJQStArNqc5ERTxosB3GiK/MbC0HFhJ4vmh/vwI0rxnXO6X25+gYnr/2PAiY9fHvGkN58A==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.TagHelpers.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.TagHelpers.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.TagHelpers.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.TagHelpers.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.TagHelpers.xml", "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.dll", - "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.xml", - "Microsoft.AspNet.Mvc.TagHelpers.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.TagHelpers.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.TagHelpers.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.TagHelpers.xml" ] }, "Microsoft.AspNet.Mvc.ViewFeatures/6.0.0-rc1-final": { - "type": "package", "sha512": "IoWtyV9HXJ1x2HKXpcqX25iPOHAmW9vlQJD3bliMV5Oix3sjieVK7i2S3VpUsJjqddpSA9Vg2PkQIzwDDS+smA==", + "type": "package", "files": [ + "Microsoft.AspNet.Mvc.ViewFeatures.6.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Mvc.ViewFeatures.6.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Mvc.ViewFeatures.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Mvc.ViewFeatures.dll", "lib/dotnet5.4/Microsoft.AspNet.Mvc.ViewFeatures.xml", "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.dll", - "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.xml", - "Microsoft.AspNet.Mvc.ViewFeatures.6.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Mvc.ViewFeatures.6.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Mvc.ViewFeatures.nuspec" + "lib/net451/Microsoft.AspNet.Mvc.ViewFeatures.xml" ] }, - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces/1.0.0-rc1-final": { + "Microsoft.AspNet.Owin/1.0.0-rc1-final": { + "sha512": "6lkzV/uEYORT1GQDddWVjsm/zRtEZHnIcWmBR4H6tqjsv1q2rWFmDy8rEckPvxUVn1iNTWKpn6s4UJglbdTgtg==", "type": "package", + "files": [ + "Microsoft.AspNet.Owin.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Owin.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Owin.nuspec", + "lib/dotnet5.4/Microsoft.AspNet.Owin.dll", + "lib/dotnet5.4/Microsoft.AspNet.Owin.xml", + "lib/net451/Microsoft.AspNet.Owin.dll", + "lib/net451/Microsoft.AspNet.Owin.xml" + ] + }, + "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces/1.0.0-rc1-final": { "sha512": "+goR2yw/UKbZGXvnR9z+mLWoAt2+AcDwE65XoV0HyYDyvvF+hotNiI5Ft0P/kVr8gpLeHS3JHHdRtsCjIqxhDQ==", + "type": "package", "files": [ + "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.nuspec", "lib/dotnet5.4/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.dll", "lib/dotnet5.4/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.xml", "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.dll", - "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.xml", - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.nuspec" + "lib/net451/Microsoft.AspNet.PageExecutionInstrumentation.Interfaces.xml" ] }, "Microsoft.AspNet.Razor/4.0.0-rc1-final": { - "type": "package", "sha512": "j4R032B5HY3WjgGir8/Zer2FWZzsux8SS1fD6AugKmI7Msx/4d8/0FCMRbLCFNytt2rosOmNJhoAp7qOlzOHVw==", + "type": "package", "files": [ + "Microsoft.AspNet.Razor.4.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Razor.4.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Razor.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Razor.dll", "lib/dotnet5.4/Microsoft.AspNet.Razor.xml", "lib/net451/Microsoft.AspNet.Razor.dll", - "lib/net451/Microsoft.AspNet.Razor.xml", - "Microsoft.AspNet.Razor.4.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Razor.4.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Razor.nuspec" + "lib/net451/Microsoft.AspNet.Razor.xml" ] }, "Microsoft.AspNet.Razor.Runtime/4.0.0-rc1-final": { - "type": "package", "sha512": "UQSVaYFnLiSI3gtb6Q2jSv3yZia+vmve/TQrprlXUT5jAeUJa5G2DWYTcGPZE6BfmAim5SZ1BOW6ozMLRBHQ/Q==", + "type": "package", "files": [ + "Microsoft.AspNet.Razor.Runtime.4.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Razor.Runtime.4.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Razor.Runtime.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Razor.Runtime.dll", "lib/dotnet5.4/Microsoft.AspNet.Razor.Runtime.xml", "lib/net451/Microsoft.AspNet.Razor.Runtime.dll", - "lib/net451/Microsoft.AspNet.Razor.Runtime.xml", - "Microsoft.AspNet.Razor.Runtime.4.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Razor.Runtime.4.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Razor.Runtime.nuspec" + "lib/net451/Microsoft.AspNet.Razor.Runtime.xml" ] }, "Microsoft.AspNet.Razor.Runtime.Precompilation/4.0.0-rc1-final": { - "type": "package", "sha512": "3YD0OJRtuYgBQX6OBLNxZf8VdOQ7nv5TlA1frq0WOuS+7KMXJj+3oS69YwJ65x4zCRpUkl2bHCFTC4X7nG4KSw==", + "type": "package", "files": [ + "Microsoft.AspNet.Razor.Runtime.Precompilation.4.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Razor.Runtime.Precompilation.4.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Razor.Runtime.Precompilation.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Razor.Runtime.Precompilation.dll", "lib/dotnet5.4/Microsoft.AspNet.Razor.Runtime.Precompilation.xml", "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.dll", - "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.xml", - "Microsoft.AspNet.Razor.Runtime.Precompilation.4.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Razor.Runtime.Precompilation.4.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Razor.Runtime.Precompilation.nuspec" + "lib/net451/Microsoft.AspNet.Razor.Runtime.Precompilation.xml" ] }, "Microsoft.AspNet.Routing/1.0.0-rc1-final": { - "type": "package", "sha512": "kIDLp1Icd+l2Z5jFGZf5rAKALS2btMKdP+a+zOepiE4oZJCAJ5tWms+MyMkMJ8hD9/5O6fF4CzckBBcA6pxNUQ==", + "type": "package", "files": [ + "Microsoft.AspNet.Routing.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Routing.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Routing.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Routing.dll", "lib/dotnet5.4/Microsoft.AspNet.Routing.xml", "lib/net451/Microsoft.AspNet.Routing.dll", - "lib/net451/Microsoft.AspNet.Routing.xml", - "Microsoft.AspNet.Routing.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Routing.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Routing.nuspec" + "lib/net451/Microsoft.AspNet.Routing.xml" ] }, "Microsoft.AspNet.Server.Kestrel/1.0.0-rc1-final": { - "type": "package", "sha512": "4fuGqW9K2PaxLwQsyRZaoO2Eu+GT5nv8WeYWpD8EqHLzY9GVEW25jy1iW2+1Tf5BwQJLN2e9QxY2K7OPlM9iRg==", + "type": "package", "files": [ + "Microsoft.AspNet.Server.Kestrel.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Server.Kestrel.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Server.Kestrel.nuspec", "lib/dnx451/Microsoft.AspNet.Server.Kestrel.dll", "lib/dnx451/Microsoft.AspNet.Server.Kestrel.xml", "lib/dnxcore50/Microsoft.AspNet.Server.Kestrel.dll", @@ -9510,9 +3870,6 @@ "lib/dotnet5.4/Microsoft.AspNet.Server.Kestrel.xml", "lib/net451/Microsoft.AspNet.Server.Kestrel.dll", "lib/net451/Microsoft.AspNet.Server.Kestrel.xml", - "Microsoft.AspNet.Server.Kestrel.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Server.Kestrel.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Server.Kestrel.nuspec", "runtimes/osx/native/libuv.dylib", "runtimes/win10-arm/native/libuv.dll", "runtimes/win7-x64/native/libuv.dll", @@ -9521,9 +3878,12 @@ ] }, "Microsoft.AspNet.Server.WebListener/1.0.0-rc1-final": { - "type": "package", "sha512": "U1S48H06oKFHVth/1xUtylpa0E4tBDYtxpzfELeZ1aNW3fdOqcd20dlh6bapOP78R+axSY1DI/FR8dGGgn+84Q==", + "type": "package", "files": [ + "Microsoft.AspNet.Server.WebListener.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Server.WebListener.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Server.WebListener.nuspec", "lib/dnx451/Microsoft.AspNet.Server.WebListener.dll", "lib/dnx451/Microsoft.AspNet.Server.WebListener.xml", "lib/dnxcore50/Microsoft.AspNet.Server.WebListener.dll", @@ -9531,184 +3891,184 @@ "lib/dotnet5.4/Microsoft.AspNet.Server.WebListener.dll", "lib/dotnet5.4/Microsoft.AspNet.Server.WebListener.xml", "lib/net451/Microsoft.AspNet.Server.WebListener.dll", - "lib/net451/Microsoft.AspNet.Server.WebListener.xml", - "Microsoft.AspNet.Server.WebListener.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Server.WebListener.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Server.WebListener.nuspec" + "lib/net451/Microsoft.AspNet.Server.WebListener.xml" ] }, "Microsoft.AspNet.Session/1.0.0-rc1-final": { - "type": "package", "sha512": "nMImkPMx/z4YL/bCBaTywQZD28sg6IvWMRckzY4hMZuhhRWr4z3HHYgORCaKbJQH3nJkfL6rb+TpmWobN9gKpw==", + "type": "package", "files": [ + "Microsoft.AspNet.Session.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Session.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Session.nuspec", "lib/dotnet5.4/Microsoft.AspNet.Session.dll", "lib/dotnet5.4/Microsoft.AspNet.Session.xml", "lib/net451/Microsoft.AspNet.Session.dll", - "lib/net451/Microsoft.AspNet.Session.xml", - "Microsoft.AspNet.Session.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Session.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Session.nuspec" + "lib/net451/Microsoft.AspNet.Session.xml" ] }, "Microsoft.AspNet.SignalR.Core/2.2.0": { - "type": "package", "sha512": "y+gx2iv3Da2YIkh/m8BSitF63PAs7sDJY9td9blvgrXzCvKAb664sc/2D7kNSwEiFDLDGCoax6pqe3pRRDSDHQ==", + "type": "package", "files": [ - "lib/net45/Microsoft.AspNet.SignalR.Core.dll", - "lib/net45/Microsoft.AspNet.SignalR.Core.xml", "Microsoft.AspNet.SignalR.Core.2.2.0.nupkg", "Microsoft.AspNet.SignalR.Core.2.2.0.nupkg.sha512", - "Microsoft.AspNet.SignalR.Core.nuspec" + "Microsoft.AspNet.SignalR.Core.nuspec", + "lib/net45/Microsoft.AspNet.SignalR.Core.dll", + "lib/net45/Microsoft.AspNet.SignalR.Core.xml" ] }, "Microsoft.AspNet.SignalR.JS/2.2.0": { - "type": "package", "sha512": "VjALldAdg3AiBPSmP9HUmqFTOQVRhl/jZI9Sq5AZAEbiPPfDK1FRjqtVia35OXyC+wGW2n20M5QNRKFuflSUsA==", + "type": "package", "files": [ - "content/Scripts/jquery.signalR-2.2.0.js", - "content/Scripts/jquery.signalR-2.2.0.min.js", "Microsoft.AspNet.SignalR.JS.2.2.0.nupkg", "Microsoft.AspNet.SignalR.JS.2.2.0.nupkg.sha512", - "Microsoft.AspNet.SignalR.JS.nuspec" + "Microsoft.AspNet.SignalR.JS.nuspec", + "content/Scripts/jquery.signalR-2.2.0.js", + "content/Scripts/jquery.signalR-2.2.0.min.js" ] }, "Microsoft.AspNet.StaticFiles/1.0.0-rc1-final": { - "type": "package", "sha512": "JKFrKL6iwGzG+DO9vwP8fEbz3gHA9K6SoCE/Th/oIwxDEENNF2TAYjjAag5c0iJcaK3+X8+s2RkA/zZ+vWHOTg==", + "type": "package", "files": [ + "Microsoft.AspNet.StaticFiles.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.StaticFiles.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.StaticFiles.nuspec", "lib/dotnet5.4/Microsoft.AspNet.StaticFiles.dll", "lib/dotnet5.4/Microsoft.AspNet.StaticFiles.xml", "lib/net451/Microsoft.AspNet.StaticFiles.dll", - "lib/net451/Microsoft.AspNet.StaticFiles.xml", - "Microsoft.AspNet.StaticFiles.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.StaticFiles.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.StaticFiles.nuspec" + "lib/net451/Microsoft.AspNet.StaticFiles.xml" ] }, "Microsoft.AspNet.Tooling.Razor/1.0.0-rc1-final": { - "type": "package", "sha512": "ZWDxJ4sqrZyrtmlRKeBYrxguRNBnTGV2LNgyZrSyVQ8DcQjPkSqFwu18BeER+j6Od2mgV5aOCdCLDN0QnjYI7Q==", + "type": "package", "files": [ + "Microsoft.AspNet.Tooling.Razor.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.Tooling.Razor.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.Tooling.Razor.nuspec", "app/project.json", "app/razor-tooling", "app/razor-tooling.cmd", "lib/dotnet5.4/Microsoft.AspNet.Tooling.Razor.dll", "lib/dotnet5.4/Microsoft.AspNet.Tooling.Razor.xml", "lib/net451/Microsoft.AspNet.Tooling.Razor.dll", - "lib/net451/Microsoft.AspNet.Tooling.Razor.xml", - "Microsoft.AspNet.Tooling.Razor.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.Tooling.Razor.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.Tooling.Razor.nuspec" + "lib/net451/Microsoft.AspNet.Tooling.Razor.xml" ] }, "Microsoft.AspNet.Web.Optimization/1.1.3": { - "type": "package", "sha512": "TWKKpTWEdB8jXp2Vl2TXNKW30GBQg6nnh0y8iZWmGY5c1XY4f649vfDslNHsCsvk9JZxc1Rkm/UGDdfq4gjWRQ==", + "type": "package", "files": [ - "lib/net40/System.Web.Optimization.dll", - "lib/net40/system.web.optimization.xml", "Microsoft.AspNet.Web.Optimization.1.1.3.nupkg", "Microsoft.AspNet.Web.Optimization.1.1.3.nupkg.sha512", - "Microsoft.AspNet.Web.Optimization.nuspec" + "Microsoft.AspNet.Web.Optimization.nuspec", + "lib/net40/System.Web.Optimization.dll", + "lib/net40/system.web.optimization.xml" ] }, "Microsoft.AspNet.WebSockets.Protocol/1.0.0-rc1-final": { - "type": "package", "sha512": "dc/e2uVh/J9dQ9DuXh0hlTSS5lID2Kr+O+EFgf9NgrvP1sFS8EWDGHoUv9RS/owVfFtd956bnRjMX2jD/5NBPA==", + "type": "package", "files": [ + "Microsoft.AspNet.WebSockets.Protocol.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.WebSockets.Protocol.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.WebSockets.Protocol.nuspec", "lib/dotnet5.4/Microsoft.AspNet.WebSockets.Protocol.dll", "lib/dotnet5.4/Microsoft.AspNet.WebSockets.Protocol.xml", "lib/net451/Microsoft.AspNet.WebSockets.Protocol.dll", - "lib/net451/Microsoft.AspNet.WebSockets.Protocol.xml", - "Microsoft.AspNet.WebSockets.Protocol.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.WebSockets.Protocol.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.WebSockets.Protocol.nuspec" + "lib/net451/Microsoft.AspNet.WebSockets.Protocol.xml" ] }, "Microsoft.AspNet.WebSockets.Server/1.0.0-rc1-final": { - "type": "package", "sha512": "hVPS2eewqM8S5cpFK62+d10WCaPBQb9pnP3ahEYP/wMlycv0nAmsQ5sMeaI06zI12cZTAXWnwf3aUgN7/2yuFA==", + "type": "package", "files": [ + "Microsoft.AspNet.WebSockets.Server.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.WebSockets.Server.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.WebSockets.Server.nuspec", "lib/dotnet5.4/Microsoft.AspNet.WebSockets.Server.dll", "lib/dotnet5.4/Microsoft.AspNet.WebSockets.Server.xml", "lib/net451/Microsoft.AspNet.WebSockets.Server.dll", - "lib/net451/Microsoft.AspNet.WebSockets.Server.xml", - "Microsoft.AspNet.WebSockets.Server.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.WebSockets.Server.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.WebSockets.Server.nuspec" + "lib/net451/Microsoft.AspNet.WebSockets.Server.xml" ] }, "Microsoft.AspNet.WebUtilities/1.0.0-rc1-final": { - "type": "package", "sha512": "0D80xroAEiWlB9X5eR/JUya1H2saIYnt4d7bPru5RRf5L/66X+9WWhf3hFkLUF3W13K6g6K9Is9dCTaEfFFKTA==", + "type": "package", "files": [ + "Microsoft.AspNet.WebUtilities.1.0.0-rc1-final.nupkg", + "Microsoft.AspNet.WebUtilities.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.AspNet.WebUtilities.nuspec", "lib/dotnet5.4/Microsoft.AspNet.WebUtilities.dll", "lib/dotnet5.4/Microsoft.AspNet.WebUtilities.xml", "lib/net451/Microsoft.AspNet.WebUtilities.dll", - "lib/net451/Microsoft.AspNet.WebUtilities.xml", - "Microsoft.AspNet.WebUtilities.1.0.0-rc1-final.nupkg", - "Microsoft.AspNet.WebUtilities.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.AspNet.WebUtilities.nuspec" + "lib/net451/Microsoft.AspNet.WebUtilities.xml" ] }, "Microsoft.AspNetCore.Authentication.OAuth/0.0.1-alpha": { - "type": "package", "sha512": "CRa90T3SrbRqYRA1libMqoLZjpQy6QirJ6/IdYJ7LSyDHuwqRSK3583Q6dJovigGGv95MdGUTVMz0iD68FcW5w==", + "type": "package", "files": [ - "content/Readme.txt", "Microsoft.AspNetCore.Authentication.OAuth.0.0.1-alpha.nupkg", "Microsoft.AspNetCore.Authentication.OAuth.0.0.1-alpha.nupkg.sha512", - "Microsoft.AspNetCore.Authentication.OAuth.nuspec" + "Microsoft.AspNetCore.Authentication.OAuth.nuspec", + "content/Readme.txt" ] }, "Microsoft.CodeAnalysis.Analyzers/1.0.0": { - "type": "package", "sha512": "E7VdmGw6xO3VHWapC+pNLZmo6yncS53UY3bmb5WZm9wliJBB1A6brgzKA4fcqiLrmJFx71r0M2zEbRDphRLUNg==", + "type": "package", "files": [ - "analyzers/dotnet/cs/Microsoft.CodeAnalysis.Analyzers.dll", - "analyzers/dotnet/cs/Microsoft.CodeAnalysis.CSharp.Analyzers.dll", - "analyzers/dotnet/vb/Microsoft.CodeAnalysis.Analyzers.dll", - "analyzers/dotnet/vb/Microsoft.CodeAnalysis.VisualBasic.Analyzers.dll", "Microsoft.CodeAnalysis.Analyzers.1.0.0.nupkg", "Microsoft.CodeAnalysis.Analyzers.1.0.0.nupkg.sha512", "Microsoft.CodeAnalysis.Analyzers.nuspec", "ThirdPartyNotices.rtf", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.CSharp.Analyzers.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.VisualBasic.Analyzers.dll", "tools/install.ps1", "tools/uninstall.ps1" ] }, "Microsoft.CodeAnalysis.Common/1.1.0-rc1-20151109-01": { - "type": "package", "sha512": "gC9zpQARTjIOht1dZM5Bp0fbOKA40yh0wHBMG2psLGquche0URbfdB9i1pnCusLospEsRIrNvYl75647BcBVug==", + "type": "package", "files": [ - "lib/net45/Microsoft.CodeAnalysis.dll", - "lib/net45/Microsoft.CodeAnalysis.xml", - "lib/portable-net45+win8/Microsoft.CodeAnalysis.dll", - "lib/portable-net45+win8/Microsoft.CodeAnalysis.xml", "Microsoft.CodeAnalysis.Common.1.1.0-rc1-20151109-01.nupkg", "Microsoft.CodeAnalysis.Common.1.1.0-rc1-20151109-01.nupkg.sha512", "Microsoft.CodeAnalysis.Common.nuspec", - "ThirdPartyNotices.rtf" + "ThirdPartyNotices.rtf", + "lib/net45/Microsoft.CodeAnalysis.dll", + "lib/net45/Microsoft.CodeAnalysis.xml", + "lib/portable-net45+win8/Microsoft.CodeAnalysis.dll", + "lib/portable-net45+win8/Microsoft.CodeAnalysis.xml" ] }, "Microsoft.CodeAnalysis.CSharp/1.1.0-rc1-20151109-01": { - "type": "package", "sha512": "BFhSWMMlp0xLN/ogn71ULN7N0yy/yqJf/wu63x3KjV497n+8OlyiX7ZnbaQiUeafjW5P2vLzvZH99+5s+dH3Dg==", + "type": "package", "files": [ - "lib/net45/Microsoft.CodeAnalysis.CSharp.dll", - "lib/net45/Microsoft.CodeAnalysis.CSharp.xml", - "lib/portable-net45+win8/Microsoft.CodeAnalysis.CSharp.dll", - "lib/portable-net45+win8/Microsoft.CodeAnalysis.CSharp.xml", "Microsoft.CodeAnalysis.CSharp.1.1.0-rc1-20151109-01.nupkg", "Microsoft.CodeAnalysis.CSharp.1.1.0-rc1-20151109-01.nupkg.sha512", "Microsoft.CodeAnalysis.CSharp.nuspec", - "ThirdPartyNotices.rtf" + "ThirdPartyNotices.rtf", + "lib/net45/Microsoft.CodeAnalysis.CSharp.dll", + "lib/net45/Microsoft.CodeAnalysis.CSharp.xml", + "lib/portable-net45+win8/Microsoft.CodeAnalysis.CSharp.dll", + "lib/portable-net45+win8/Microsoft.CodeAnalysis.CSharp.xml" ] }, "Microsoft.Data.Sqlite/1.0.0-rc1-final": { - "type": "package", "sha512": "54F32OBWIWMIpeKggCMEX+Bp/TiAiKzBaQ4z+IRr61eNSnJhxMnLE/QWDs5YbCtbDlWIB4+VBC1rnT8PFGCtdw==", + "type": "package", "files": [ + "Microsoft.Data.Sqlite.1.0.0-rc1-final.nupkg", + "Microsoft.Data.Sqlite.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Data.Sqlite.nuspec", "build/net451/Microsoft.Data.Sqlite.props", "build/netcore50/Microsoft.Data.Sqlite.targets", "build/netcore50/win10-arm/native/sqlite3.dll", @@ -9720,550 +4080,550 @@ "lib/net451/Microsoft.Data.Sqlite.xml", "lib/netcore50/Microsoft.Data.Sqlite.dll", "lib/netcore50/Microsoft.Data.Sqlite.xml", - "Microsoft.Data.Sqlite.1.0.0-rc1-final.nupkg", - "Microsoft.Data.Sqlite.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Data.Sqlite.nuspec", "runtimes/win7-x64/native/sqlite3.dll", "runtimes/win7-x86/native/sqlite3.dll" ] }, "Microsoft.Dnx.Compilation.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "kg3kR7H12Bs46TiuF7YT8A3SNXehhBcwsArIMQIH2ecXGkg5MPWDl2OR6bnQu6k0OMu9QUiv1oiwC9yU7rHWfw==", + "type": "package", "files": [ + "Microsoft.Dnx.Compilation.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Dnx.Compilation.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Dnx.Compilation.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.Dnx.Compilation.Abstractions.dll", "lib/dotnet5.4/Microsoft.Dnx.Compilation.Abstractions.xml", "lib/net451/Microsoft.Dnx.Compilation.Abstractions.dll", - "lib/net451/Microsoft.Dnx.Compilation.Abstractions.xml", - "Microsoft.Dnx.Compilation.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Dnx.Compilation.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Dnx.Compilation.Abstractions.nuspec" + "lib/net451/Microsoft.Dnx.Compilation.Abstractions.xml" ] }, "Microsoft.Dnx.Compilation.CSharp.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "MYJJHSIqOvmQxm2KOCwfber5JUwYKtfMREVYxnj/kv+HQrfrztL9dN4IFvh/SsBzm5cGR0Lt52bWJKzkrIRF/g==", + "type": "package", "files": [ + "Microsoft.Dnx.Compilation.CSharp.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Dnx.Compilation.CSharp.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Dnx.Compilation.CSharp.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.Dnx.Compilation.CSharp.Abstractions.dll", "lib/dotnet5.4/Microsoft.Dnx.Compilation.CSharp.Abstractions.xml", "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.dll", - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.xml", - "Microsoft.Dnx.Compilation.CSharp.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Dnx.Compilation.CSharp.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Dnx.Compilation.CSharp.Abstractions.nuspec" + "lib/net451/Microsoft.Dnx.Compilation.CSharp.Abstractions.xml" ] }, "Microsoft.Dnx.Compilation.CSharp.Common/1.0.0-rc1-final": { - "type": "package", "sha512": "/OnNSw+oX/sc3Rl1Q9vFMhg+OPC+AbaDYmC4JufkHop8Ydhsv94JDT4w5xrpXi7QIKICQGTyzQgAkUjPnuFzdA==", + "type": "package", "files": [ + "Microsoft.Dnx.Compilation.CSharp.Common.1.0.0-rc1-final.nupkg", + "Microsoft.Dnx.Compilation.CSharp.Common.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Dnx.Compilation.CSharp.Common.nuspec", "lib/dotnet5.4/Microsoft.Dnx.Compilation.CSharp.Common.dll", "lib/dotnet5.4/Microsoft.Dnx.Compilation.CSharp.Common.xml", "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.dll", - "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.xml", - "Microsoft.Dnx.Compilation.CSharp.Common.1.0.0-rc1-final.nupkg", - "Microsoft.Dnx.Compilation.CSharp.Common.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Dnx.Compilation.CSharp.Common.nuspec" + "lib/net451/Microsoft.Dnx.Compilation.CSharp.Common.xml" ] }, "Microsoft.Extensions.Caching.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "WlNfPuf/8Q7DzMiOHjiT9Ha2IYdguLGfHT/2C/p9KzviCKXaqfrIdI6X9w5MmCuiYRucqK+iM5cIWKHQ1mmZrg==", + "type": "package", "files": [ + "Microsoft.Extensions.Caching.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Caching.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Caching.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Caching.Abstractions.dll", "lib/dotnet5.4/Microsoft.Extensions.Caching.Abstractions.xml", "lib/net451/Microsoft.Extensions.Caching.Abstractions.dll", "lib/net451/Microsoft.Extensions.Caching.Abstractions.xml", "lib/netcore50/Microsoft.Extensions.Caching.Abstractions.dll", - "lib/netcore50/Microsoft.Extensions.Caching.Abstractions.xml", - "Microsoft.Extensions.Caching.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Caching.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Caching.Abstractions.nuspec" + "lib/netcore50/Microsoft.Extensions.Caching.Abstractions.xml" ] }, "Microsoft.Extensions.Caching.Memory/1.0.0-rc1-final": { - "type": "package", "sha512": "KQFkXdBieLObHr1+ld0FVOLQLgVFcrhn6qIixsmP09TyEw2VaGPrzIiBVJSzyKfaE2MVJlshDvfdvcfSE/zl3g==", + "type": "package", "files": [ + "Microsoft.Extensions.Caching.Memory.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Caching.Memory.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Caching.Memory.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Caching.Memory.dll", "lib/dotnet5.4/Microsoft.Extensions.Caching.Memory.xml", "lib/net451/Microsoft.Extensions.Caching.Memory.dll", "lib/net451/Microsoft.Extensions.Caching.Memory.xml", "lib/netcore50/Microsoft.Extensions.Caching.Memory.dll", - "lib/netcore50/Microsoft.Extensions.Caching.Memory.xml", - "Microsoft.Extensions.Caching.Memory.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Caching.Memory.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Caching.Memory.nuspec" + "lib/netcore50/Microsoft.Extensions.Caching.Memory.xml" ] }, "Microsoft.Extensions.CodeGeneration/1.0.0-rc1-final": { - "type": "package", "sha512": "Mkld1xqSkU1CuMtMlbKMPwzoXMXBzC/SdOiRLutd632mGrQCDwhBgrxiBDfFDD63OxWt24TjMZkqlxmRRTm7zQ==", + "type": "package", "files": [ + "Microsoft.Extensions.CodeGeneration.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.CodeGeneration.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.CodeGeneration.nuspec", "lib/dnx451/Microsoft.Extensions.CodeGeneration.dll", "lib/dnx451/Microsoft.Extensions.CodeGeneration.xml", "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.dll", - "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.xml", - "Microsoft.Extensions.CodeGeneration.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.CodeGeneration.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.CodeGeneration.nuspec" + "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.xml" ] }, "Microsoft.Extensions.CodeGeneration.Core/1.0.0-rc1-final": { - "type": "package", "sha512": "uQe19xMM4ymoC9uU/rLZTkbSH8n/CVKEjw4jbLfoFq179+LH4IxDRqPqidEMQUF6ON4jYVwhexuAMPJdQ5ewjQ==", + "type": "package", "files": [ + "Microsoft.Extensions.CodeGeneration.Core.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.CodeGeneration.Core.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.CodeGeneration.Core.nuspec", "lib/dnx451/Microsoft.Extensions.CodeGeneration.Core.dll", "lib/dnx451/Microsoft.Extensions.CodeGeneration.Core.xml", "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.Core.dll", - "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.Core.xml", - "Microsoft.Extensions.CodeGeneration.Core.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.CodeGeneration.Core.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.CodeGeneration.Core.nuspec" + "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.Core.xml" ] }, "Microsoft.Extensions.CodeGeneration.EntityFramework/1.0.0-rc1-final": { - "type": "package", "sha512": "Bs5bPxbPlTYAB5d1+bPjnAZqQyQMueg0orED8boIlwb66he5pFO7LuQ3Q+BNTUB4x3M1q1U7L1L469tllVtGZg==", + "type": "package", "files": [ - "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.dll", - "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.xml", - "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.EntityFramework.dll", - "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.EntityFramework.xml", "Microsoft.Extensions.CodeGeneration.EntityFramework.1.0.0-rc1-final.nupkg", "Microsoft.Extensions.CodeGeneration.EntityFramework.1.0.0-rc1-final.nupkg.sha512", "Microsoft.Extensions.CodeGeneration.EntityFramework.nuspec", - "Templates/DbContext/NewLocalDbContext.cshtml" + "Templates/DbContext/NewLocalDbContext.cshtml", + "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.dll", + "lib/dnx451/Microsoft.Extensions.CodeGeneration.EntityFramework.xml", + "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.EntityFramework.dll", + "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.EntityFramework.xml" ] }, "Microsoft.Extensions.CodeGeneration.Templating/1.0.0-rc1-final": { - "type": "package", "sha512": "d20Suo15M+sNS5QBYMfJpBgSUFclVSeIU06Y/snnmKdNjAiQfbKkW0bG8ryBw8zn29KXHcK39DwUpkrFvphQIg==", + "type": "package", "files": [ + "Microsoft.Extensions.CodeGeneration.Templating.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.CodeGeneration.Templating.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.CodeGeneration.Templating.nuspec", "lib/dnx451/Microsoft.Extensions.CodeGeneration.Templating.dll", "lib/dnx451/Microsoft.Extensions.CodeGeneration.Templating.xml", "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.Templating.dll", - "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.Templating.xml", - "Microsoft.Extensions.CodeGeneration.Templating.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.CodeGeneration.Templating.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.CodeGeneration.Templating.nuspec" + "lib/dnxcore50/Microsoft.Extensions.CodeGeneration.Templating.xml" ] }, "Microsoft.Extensions.CodeGenerators.Mvc/1.0.0-rc1-final": { - "type": "package", "sha512": "rkec5T1UW17vRb6rPWEDOq4WHj7+mu8IKWuea9I05YKDACo/EBgDhqp4aoZrOsNzoEH6k+NlL0FRa3o5s9vglA==", + "type": "package", "files": [ - "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.dll", - "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.xml", - "lib/dnxcore50/Microsoft.Extensions.CodeGenerators.Mvc.dll", - "lib/dnxcore50/Microsoft.Extensions.CodeGenerators.Mvc.xml", "Microsoft.Extensions.CodeGenerators.Mvc.1.0.0-rc1-final.nupkg", "Microsoft.Extensions.CodeGenerators.Mvc.1.0.0-rc1-final.nupkg.sha512", "Microsoft.Extensions.CodeGenerators.Mvc.nuspec", + "THIRDPARTYNOTICE ASP.NET_Preview.rtf", "Templates/ControllerGenerator/ApiControllerWithContext.cshtml", "Templates/ControllerGenerator/EmptyController.cshtml", "Templates/ControllerGenerator/MvcControllerWithContext.cshtml", - "Templates/MvcLayout/_Layout.cshtml", "Templates/MvcLayout/Error.cshtml", + "Templates/MvcLayout/_Layout.cshtml", "Templates/Startup/ReadMe.cshtml", "Templates/Startup/Startup.cshtml", - "Templates/StaticFiles/Content/bootstrap.css", - "Templates/StaticFiles/Content/bootstrap.min.css", "Templates/StaticFiles/Content/Scripts/_references.js", "Templates/StaticFiles/Content/Scripts/bootstrap.js", "Templates/StaticFiles/Content/Scripts/bootstrap.min.js", - "Templates/StaticFiles/Content/Scripts/jquery.validate.js", - "Templates/StaticFiles/Content/Scripts/jquery.validate.min.js", - "Templates/StaticFiles/Content/Scripts/jquery.validate.unobtrusive.js", - "Templates/StaticFiles/Content/Scripts/jquery.validate.unobtrusive.min.js", - "Templates/StaticFiles/Content/Scripts/jquery.validate-vsdoc.js", "Templates/StaticFiles/Content/Scripts/jquery-1.10.2.intellisense.js", "Templates/StaticFiles/Content/Scripts/jquery-1.10.2.js", "Templates/StaticFiles/Content/Scripts/jquery-1.10.2.min.js", "Templates/StaticFiles/Content/Scripts/jquery-1.10.2.min.map", + "Templates/StaticFiles/Content/Scripts/jquery.validate-vsdoc.js", + "Templates/StaticFiles/Content/Scripts/jquery.validate.js", + "Templates/StaticFiles/Content/Scripts/jquery.validate.min.js", + "Templates/StaticFiles/Content/Scripts/jquery.validate.unobtrusive.js", + "Templates/StaticFiles/Content/Scripts/jquery.validate.unobtrusive.min.js", "Templates/StaticFiles/Content/Scripts/modernizr-2.6.2.js", "Templates/StaticFiles/Content/Scripts/respond.js", "Templates/StaticFiles/Content/Scripts/respond.min.js", "Templates/StaticFiles/Content/Site.css", + "Templates/StaticFiles/Content/bootstrap.css", + "Templates/StaticFiles/Content/bootstrap.min.css", "Templates/ViewGenerator/Create.cshtml", "Templates/ViewGenerator/Delete.cshtml", "Templates/ViewGenerator/Details.cshtml", "Templates/ViewGenerator/Edit.cshtml", "Templates/ViewGenerator/List.cshtml", - "THIRDPARTYNOTICE ASP.NET_Preview.rtf" + "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.dll", + "lib/dnx451/Microsoft.Extensions.CodeGenerators.Mvc.xml", + "lib/dnxcore50/Microsoft.Extensions.CodeGenerators.Mvc.dll", + "lib/dnxcore50/Microsoft.Extensions.CodeGenerators.Mvc.xml" ] }, "Microsoft.Extensions.Configuration/1.0.0-rc1-final": { - "type": "package", "sha512": "2ayWzqMVGWjr8o8bOSnIsyQbi9sLz9Ya8+YM+9tM/ivSnLHuN7TNHNfJv4jTyRZvoOafdh5Ivlc/OdmsZPXlQQ==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.xml", "lib/net451/Microsoft.Extensions.Configuration.dll", "lib/net451/Microsoft.Extensions.Configuration.xml", "lib/netcore50/Microsoft.Extensions.Configuration.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.xml", - "Microsoft.Extensions.Configuration.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.xml" ] }, "Microsoft.Extensions.Configuration.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "xA7ObOlIswcx2qakv69kz0pnBizFJrmwxRxJyjPOHWfevF4W+OdolZsbKOc12kY7y5upqhAvNGWTblffMvADHA==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.Abstractions.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.Abstractions.xml", "lib/net451/Microsoft.Extensions.Configuration.Abstractions.dll", "lib/net451/Microsoft.Extensions.Configuration.Abstractions.xml", "lib/netcore50/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.Abstractions.xml", - "Microsoft.Extensions.Configuration.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.Abstractions.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.Abstractions.xml" ] }, "Microsoft.Extensions.Configuration.Binder/1.0.0-rc1-final": { - "type": "package", "sha512": "tuIi7cRq6lbpCybL+z9vamz/KbM+nN9nyJ2Id5bKCdxKDNMnKb9PdMxJ+0DHc8p6fP00PyQucYuN5EpxsYrX6Q==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.Binder.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.Binder.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.Binder.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.Binder.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.Binder.xml", "lib/net451/Microsoft.Extensions.Configuration.Binder.dll", "lib/net451/Microsoft.Extensions.Configuration.Binder.xml", "lib/netcore50/Microsoft.Extensions.Configuration.Binder.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.Binder.xml", - "Microsoft.Extensions.Configuration.Binder.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.Binder.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.Binder.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.Binder.xml" ] }, "Microsoft.Extensions.Configuration.CommandLine/1.0.0-rc1-final": { - "type": "package", "sha512": "k+kXsefuLV5WkkG6X8GFn9zf9ZrMyC3dddgm6I6scpbanDyoKUYrRUP2VhW0ViO6TIva0soh6jJy3pFPCrNx9Q==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.CommandLine.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.CommandLine.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.CommandLine.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.CommandLine.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.CommandLine.xml", "lib/net451/Microsoft.Extensions.Configuration.CommandLine.dll", "lib/net451/Microsoft.Extensions.Configuration.CommandLine.xml", "lib/netcore50/Microsoft.Extensions.Configuration.CommandLine.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.CommandLine.xml", - "Microsoft.Extensions.Configuration.CommandLine.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.CommandLine.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.CommandLine.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.CommandLine.xml" ] }, "Microsoft.Extensions.Configuration.EnvironmentVariables/1.0.0-rc1-final": { - "type": "package", "sha512": "CaNirkiOycy0L6ptGxmpDkHZ2lzqcHKDbQJBfEhobnEt43pqKGKgAPC5dW3DfnsMpuK+inypm5iht9t6tq4vjg==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.EnvironmentVariables.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.EnvironmentVariables.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.EnvironmentVariables.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.EnvironmentVariables.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.EnvironmentVariables.xml", "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.dll", "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.xml", "lib/netcore50/Microsoft.Extensions.Configuration.EnvironmentVariables.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.EnvironmentVariables.xml", - "Microsoft.Extensions.Configuration.EnvironmentVariables.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.EnvironmentVariables.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.EnvironmentVariables.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.EnvironmentVariables.xml" ] }, "Microsoft.Extensions.Configuration.FileExtensions/1.0.0-rc1-final": { - "type": "package", "sha512": "w2x8nqrp2YUgNBJuZ3SUmexBtjaoZFzCQtObRTjrE4GWceFEmaLZtXFvs4n9IgRQkOqqCza7Fv7NXnD9m2emjQ==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.FileExtensions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.FileExtensions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.FileExtensions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.FileExtensions.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.FileExtensions.xml", "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.dll", "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.xml", "lib/netcore50/Microsoft.Extensions.Configuration.FileExtensions.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.FileExtensions.xml", - "Microsoft.Extensions.Configuration.FileExtensions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.FileExtensions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.FileExtensions.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.FileExtensions.xml" ] }, "Microsoft.Extensions.Configuration.FileProviderExtensions/1.0.0-rc1-final": { - "type": "package", "sha512": "OhIrGyCmuWalr0WEAtoRarpTTxP/hb4CHHvv15KYjzgB91T5In2PMaBX65Y0pBxvhKqPdocvo8iNOh2Sk+abNw==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.FileProviderExtensions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.FileProviderExtensions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.FileProviderExtensions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.FileProviderExtensions.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.FileProviderExtensions.xml", "lib/net451/Microsoft.Extensions.Configuration.FileProviderExtensions.dll", "lib/net451/Microsoft.Extensions.Configuration.FileProviderExtensions.xml", "lib/netcore50/Microsoft.Extensions.Configuration.FileProviderExtensions.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.FileProviderExtensions.xml", - "Microsoft.Extensions.Configuration.FileProviderExtensions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.FileProviderExtensions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.FileProviderExtensions.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.FileProviderExtensions.xml" ] }, "Microsoft.Extensions.Configuration.Json/1.0.0-rc1-final": { - "type": "package", "sha512": "9v+RpswnXEpAP5mx8J1w1yZZT2pPtMBTnOAauNh2c9ju5Dhq3ljxvbm0S9j6o5F/EFSLlbfN/brxTJN3qa/upw==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.Json.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.Json.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.Json.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.Json.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.Json.xml", "lib/net451/Microsoft.Extensions.Configuration.Json.dll", "lib/net451/Microsoft.Extensions.Configuration.Json.xml", "lib/netcore50/Microsoft.Extensions.Configuration.Json.dll", - "lib/netcore50/Microsoft.Extensions.Configuration.Json.xml", - "Microsoft.Extensions.Configuration.Json.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.Json.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.Json.nuspec" + "lib/netcore50/Microsoft.Extensions.Configuration.Json.xml" ] }, "Microsoft.Extensions.Configuration.UserSecrets/1.0.0-rc1-final": { - "type": "package", "sha512": "m2WaXGNWRrbpWquen8PS1oB8GdG5tCSWhXAmFbhacj1mhz3ojFy0TDUZPbx87TX2ZQNNp6MYfzO5Z73hlM47Bw==", + "type": "package", "files": [ + "Microsoft.Extensions.Configuration.UserSecrets.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Configuration.UserSecrets.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Configuration.UserSecrets.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Configuration.UserSecrets.dll", "lib/dotnet5.4/Microsoft.Extensions.Configuration.UserSecrets.xml", "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.dll", - "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.xml", - "Microsoft.Extensions.Configuration.UserSecrets.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Configuration.UserSecrets.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Configuration.UserSecrets.nuspec" + "lib/net451/Microsoft.Extensions.Configuration.UserSecrets.xml" ] }, "Microsoft.Extensions.DependencyInjection/1.0.0-rc1-final": { - "type": "package", "sha512": "S/+s3fq85j21H5nYOvh1fIt1arl8F5lZ7Ryiw/qend83yHQwIQbBs+dip9FhqiPmAn6Dz3UhW0likQQurfEsLQ==", + "type": "package", "files": [ + "Microsoft.Extensions.DependencyInjection.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.DependencyInjection.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.DependencyInjection.nuspec", "lib/dotnet5.4/Microsoft.Extensions.DependencyInjection.dll", "lib/dotnet5.4/Microsoft.Extensions.DependencyInjection.xml", "lib/net451/Microsoft.Extensions.DependencyInjection.dll", "lib/net451/Microsoft.Extensions.DependencyInjection.xml", "lib/netcore50/Microsoft.Extensions.DependencyInjection.dll", - "lib/netcore50/Microsoft.Extensions.DependencyInjection.xml", - "Microsoft.Extensions.DependencyInjection.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.DependencyInjection.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.DependencyInjection.nuspec" + "lib/netcore50/Microsoft.Extensions.DependencyInjection.xml" ] }, "Microsoft.Extensions.DependencyInjection.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "MUKexXAsRZ55C7YZ26ShePZgBeW+6FbasxeIVmZ/BZIgiG4uw6yPOdfl9WvTaUL9SFK2sEPcYLatWmLfTpsOAA==", + "type": "package", "files": [ + "Microsoft.Extensions.DependencyInjection.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.DependencyInjection.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.DependencyInjection.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.DependencyInjection.Abstractions.dll", "lib/dotnet5.4/Microsoft.Extensions.DependencyInjection.Abstractions.xml", "lib/net451/Microsoft.Extensions.DependencyInjection.Abstractions.dll", "lib/net451/Microsoft.Extensions.DependencyInjection.Abstractions.xml", "lib/netcore50/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/netcore50/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "Microsoft.Extensions.DependencyInjection.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.DependencyInjection.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.DependencyInjection.Abstractions.nuspec" + "lib/netcore50/Microsoft.Extensions.DependencyInjection.Abstractions.xml" ] }, "Microsoft.Extensions.FileSystemGlobbing/1.0.0-rc1-final": { - "type": "package", "sha512": "7N9IPDU0T1uQBj6hobeGNqiEd+Cuu6RHJ0RcwkUvzTsLq8Vf2Sc72+HEAICTw1CTRXHgW49Zr47PvO0QPxI/5g==", + "type": "package", "files": [ + "Microsoft.Extensions.FileSystemGlobbing.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.FileSystemGlobbing.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.FileSystemGlobbing.nuspec", "lib/dotnet5.4/Microsoft.Extensions.FileSystemGlobbing.dll", "lib/dotnet5.4/Microsoft.Extensions.FileSystemGlobbing.xml", "lib/net451/Microsoft.Extensions.FileSystemGlobbing.dll", - "lib/net451/Microsoft.Extensions.FileSystemGlobbing.xml", - "Microsoft.Extensions.FileSystemGlobbing.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.FileSystemGlobbing.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.FileSystemGlobbing.nuspec" + "lib/net451/Microsoft.Extensions.FileSystemGlobbing.xml" ] }, "Microsoft.Extensions.Globalization.CultureInfoCache/1.0.0-rc1-final": { - "type": "package", "sha512": "HZggxvkQz5r5Dp36eCdnV8A/fmuhlK2xxmSnUKPES4w3l0C8mzbRLoJlPVdxyd9xy00odSlS5tz8w2IegZcqBQ==", + "type": "package", "files": [ + "Microsoft.Extensions.Globalization.CultureInfoCache.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Globalization.CultureInfoCache.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Globalization.CultureInfoCache.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Globalization.CultureInfoCache.dll", "lib/dotnet5.4/Microsoft.Extensions.Globalization.CultureInfoCache.xml", "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.dll", - "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.xml", - "Microsoft.Extensions.Globalization.CultureInfoCache.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Globalization.CultureInfoCache.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Globalization.CultureInfoCache.nuspec" + "lib/net451/Microsoft.Extensions.Globalization.CultureInfoCache.xml" ] }, "Microsoft.Extensions.Localization/1.0.0-rc1-final": { - "type": "package", "sha512": "nt1CcD9lUXyYl0Y+ecAr2DtPI3rRCs5f1zUKRl5rN8SFOXHXK21V6kycFVP+VckUD39jsTTLuxKSKGCuBZ/9+Q==", + "type": "package", "files": [ + "Microsoft.Extensions.Localization.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Localization.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Localization.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Localization.dll", "lib/dotnet5.4/Microsoft.Extensions.Localization.xml", "lib/net451/Microsoft.Extensions.Localization.dll", - "lib/net451/Microsoft.Extensions.Localization.xml", - "Microsoft.Extensions.Localization.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Localization.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Localization.nuspec" + "lib/net451/Microsoft.Extensions.Localization.xml" ] }, "Microsoft.Extensions.Localization.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "0Z6Knet4Re5ZLIpixjLX9w8TrTPjsB3F/b9EIN1RdX5inXkdOrnpgiT6j/PzcgUcCNlCXe1dTqutVSDE6+26ig==", + "type": "package", "files": [ + "Microsoft.Extensions.Localization.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Localization.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Localization.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Localization.Abstractions.dll", "lib/dotnet5.4/Microsoft.Extensions.Localization.Abstractions.xml", "lib/net451/Microsoft.Extensions.Localization.Abstractions.dll", - "lib/net451/Microsoft.Extensions.Localization.Abstractions.xml", - "Microsoft.Extensions.Localization.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Localization.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Localization.Abstractions.nuspec" + "lib/net451/Microsoft.Extensions.Localization.Abstractions.xml" ] }, "Microsoft.Extensions.Logging/1.0.0-rc1-final": { - "type": "package", "sha512": "anegHH4XHjaCmC557A0uvnJzprT44MOKr669yfiQLtITA+lQrM3aMijxjjdCREnxE8ftXuSz+6wViCvkgcAOhA==", + "type": "package", "files": [ + "Microsoft.Extensions.Logging.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Logging.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Logging.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Logging.dll", "lib/dotnet5.4/Microsoft.Extensions.Logging.xml", "lib/net451/Microsoft.Extensions.Logging.dll", "lib/net451/Microsoft.Extensions.Logging.xml", "lib/netcore50/Microsoft.Extensions.Logging.dll", - "lib/netcore50/Microsoft.Extensions.Logging.xml", - "Microsoft.Extensions.Logging.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Logging.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Logging.nuspec" + "lib/netcore50/Microsoft.Extensions.Logging.xml" ] }, "Microsoft.Extensions.Logging.Abstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "ejGO1JhPXMsCCSyH12xwkOYsb9oBv2gHc3LLaT2jevrD//xuQizWaxpVk0/rHGdORkWdp+kT2Qmuz/sLyNWW/g==", + "type": "package", "files": [ + "Microsoft.Extensions.Logging.Abstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Logging.Abstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Logging.Abstractions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Logging.Abstractions.dll", "lib/dotnet5.4/Microsoft.Extensions.Logging.Abstractions.xml", "lib/net451/Microsoft.Extensions.Logging.Abstractions.dll", "lib/net451/Microsoft.Extensions.Logging.Abstractions.xml", "lib/netcore50/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/netcore50/Microsoft.Extensions.Logging.Abstractions.xml", - "Microsoft.Extensions.Logging.Abstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Logging.Abstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Logging.Abstractions.nuspec" + "lib/netcore50/Microsoft.Extensions.Logging.Abstractions.xml" ] }, "Microsoft.Extensions.Logging.Console/1.0.0-rc1-final": { - "type": "package", "sha512": "zUklTASL2my5gp291VZuK6YMLit9ECmU7gDNN/gDwqO3EB1CDyKQtGQBtABNNgJw/0In8mFFNbsiGYhZ8xFUJA==", + "type": "package", "files": [ + "Microsoft.Extensions.Logging.Console.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Logging.Console.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Logging.Console.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Logging.Console.dll", "lib/dotnet5.4/Microsoft.Extensions.Logging.Console.xml", "lib/net451/Microsoft.Extensions.Logging.Console.dll", "lib/net451/Microsoft.Extensions.Logging.Console.xml", "lib/netcore50/Microsoft.Extensions.Logging.Console.dll", - "lib/netcore50/Microsoft.Extensions.Logging.Console.xml", - "Microsoft.Extensions.Logging.Console.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Logging.Console.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Logging.Console.nuspec" + "lib/netcore50/Microsoft.Extensions.Logging.Console.xml" ] }, "Microsoft.Extensions.Logging.Debug/1.0.0-rc1-final": { - "type": "package", "sha512": "MBBASQ1nP6TeQndLQIr2iBYicVwZB64T14cnsvTuiWsV/aj5nFtR23hLYOJL2JJkrkU25/1/knxDpfH+0vG96g==", + "type": "package", "files": [ + "Microsoft.Extensions.Logging.Debug.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Logging.Debug.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Logging.Debug.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Logging.Debug.dll", "lib/dotnet5.4/Microsoft.Extensions.Logging.Debug.xml", "lib/net451/Microsoft.Extensions.Logging.Debug.dll", "lib/net451/Microsoft.Extensions.Logging.Debug.xml", "lib/netcore50/Microsoft.Extensions.Logging.Debug.dll", - "lib/netcore50/Microsoft.Extensions.Logging.Debug.xml", - "Microsoft.Extensions.Logging.Debug.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Logging.Debug.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Logging.Debug.nuspec" + "lib/netcore50/Microsoft.Extensions.Logging.Debug.xml" ] }, "Microsoft.Extensions.MemoryPool/1.0.0-rc1-final": { - "type": "package", "sha512": "QaWADlihqf1DDDLqav1v5u7ObNF7qqPpt4CyN7xBwSx0/jhFjtDnFnKswNYgC/kNFJWZ+crF22AR19M3LlQRaQ==", + "type": "package", "files": [ + "Microsoft.Extensions.MemoryPool.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.MemoryPool.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.MemoryPool.nuspec", "lib/dotnet5.4/Microsoft.Extensions.MemoryPool.dll", "lib/dotnet5.4/Microsoft.Extensions.MemoryPool.xml", "lib/net451/Microsoft.Extensions.MemoryPool.dll", - "lib/net451/Microsoft.Extensions.MemoryPool.xml", - "Microsoft.Extensions.MemoryPool.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.MemoryPool.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.MemoryPool.nuspec" + "lib/net451/Microsoft.Extensions.MemoryPool.xml" ] }, "Microsoft.Extensions.Options/0.0.1-alpha": { - "type": "package", "sha512": "5zH0KTUqMzt66T9dcJy2x7imjsAHgqctudJGWDKHtNtyKsedyv0xAc7PLStFfrkZQjlqtn/X8QpHnsGEl+fMwQ==", + "type": "package", "files": [ - "content/Readme.txt", "Microsoft.Extensions.Options.0.0.1-alpha.nupkg", "Microsoft.Extensions.Options.0.0.1-alpha.nupkg.sha512", - "Microsoft.Extensions.Options.nuspec" + "Microsoft.Extensions.Options.nuspec", + "content/Readme.txt" ] }, "Microsoft.Extensions.OptionsModel/1.0.0-rc1-final": { - "type": "package", "sha512": "IhK5pNqRgakrwiv5OrB6hv7e6+TZzYqfJr40Qri0Xgi+oXJklNgbA5eHvzZrghdHfqfSqcvLWtWD0ri6e8Eo1w==", + "type": "package", "files": [ + "Microsoft.Extensions.OptionsModel.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.OptionsModel.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.OptionsModel.nuspec", "lib/dotnet5.4/Microsoft.Extensions.OptionsModel.dll", "lib/dotnet5.4/Microsoft.Extensions.OptionsModel.xml", "lib/net451/Microsoft.Extensions.OptionsModel.dll", "lib/net451/Microsoft.Extensions.OptionsModel.xml", - "lib/netcore50/Microsoft.Extensions.OptionsModel.dll", - "lib/netcore50/Microsoft.Extensions.OptionsModel.xml", - "Microsoft.Extensions.OptionsModel.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.OptionsModel.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.OptionsModel.nuspec" + "lib/netcore50/Microsoft.Extensions.OptionsModel.dll", + "lib/netcore50/Microsoft.Extensions.OptionsModel.xml" ] }, "Microsoft.Extensions.PlatformAbstractions/1.0.0-rc1-final": { - "type": "package", "sha512": "26HS4c6MBisN+D7XUr8HObOI/JJvSJQYQR//Bfw/hi9UqhqK3lFpNKjOuYHI+gTxYdXT46HqZiz4D+k7d+ob3A==", + "type": "package", "files": [ + "Microsoft.Extensions.PlatformAbstractions.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.PlatformAbstractions.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.PlatformAbstractions.nuspec", "lib/dotnet5.4/Microsoft.Extensions.PlatformAbstractions.dll", "lib/dotnet5.4/Microsoft.Extensions.PlatformAbstractions.xml", "lib/net451/Microsoft.Extensions.PlatformAbstractions.dll", - "lib/net451/Microsoft.Extensions.PlatformAbstractions.xml", - "Microsoft.Extensions.PlatformAbstractions.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.PlatformAbstractions.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.PlatformAbstractions.nuspec" + "lib/net451/Microsoft.Extensions.PlatformAbstractions.xml" ] }, "Microsoft.Extensions.Primitives/1.0.0-rc1-final": { - "type": "package", "sha512": "oHWqBARJveyM7LctuqQqvsTC58hxoq0gGnHr6Qsxie71LIkZpfE21IklhSLOsqmv4QIpes/G6k1vZbAQ+cC/nw==", + "type": "package", "files": [ + "Microsoft.Extensions.Primitives.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.Primitives.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.Primitives.nuspec", "lib/dotnet5.4/Microsoft.Extensions.Primitives.dll", "lib/dotnet5.4/Microsoft.Extensions.Primitives.xml", "lib/net451/Microsoft.Extensions.Primitives.dll", "lib/net451/Microsoft.Extensions.Primitives.xml", "lib/netcore50/Microsoft.Extensions.Primitives.dll", - "lib/netcore50/Microsoft.Extensions.Primitives.xml", - "Microsoft.Extensions.Primitives.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.Primitives.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.Primitives.nuspec" + "lib/netcore50/Microsoft.Extensions.Primitives.xml" ] }, "Microsoft.Extensions.WebEncoders/1.0.0-rc1-final": { - "type": "package", "sha512": "wzBnlP/2tFePKvM+DNyRuf6mWt9BxCRjdQBFi+9xUz0DhFdhMzLKN97ZE9/fd36rUVjd2JwlGqHUOSYQURNhfw==", + "type": "package", "files": [ + "Microsoft.Extensions.WebEncoders.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.WebEncoders.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.WebEncoders.nuspec", "lib/dotnet5.4/Microsoft.Extensions.WebEncoders.dll", "lib/dotnet5.4/Microsoft.Extensions.WebEncoders.xml", "lib/net451/Microsoft.Extensions.WebEncoders.dll", - "lib/net451/Microsoft.Extensions.WebEncoders.xml", - "Microsoft.Extensions.WebEncoders.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.WebEncoders.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.WebEncoders.nuspec" + "lib/net451/Microsoft.Extensions.WebEncoders.xml" ] }, "Microsoft.Extensions.WebEncoders.Core/1.0.0-rc1-final": { - "type": "package", "sha512": "wt47w3Zu7JvuD7CfRSCaz0IZL5EzpuzicRm6Qcidteb2TVeB98Psg7YGiwIBeYB1b52YFTBgqC+ySKk/GRhy2A==", + "type": "package", "files": [ + "Microsoft.Extensions.WebEncoders.Core.1.0.0-rc1-final.nupkg", + "Microsoft.Extensions.WebEncoders.Core.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Extensions.WebEncoders.Core.nuspec", "lib/dotnet5.4/Microsoft.Extensions.WebEncoders.Core.dll", "lib/dotnet5.4/Microsoft.Extensions.WebEncoders.Core.xml", "lib/net451/Microsoft.Extensions.WebEncoders.Core.dll", - "lib/net451/Microsoft.Extensions.WebEncoders.Core.xml", - "Microsoft.Extensions.WebEncoders.Core.1.0.0-rc1-final.nupkg", - "Microsoft.Extensions.WebEncoders.Core.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Extensions.WebEncoders.Core.nuspec" + "lib/net451/Microsoft.Extensions.WebEncoders.Core.xml" ] }, "Microsoft.Framework.Configuration/1.0.0-beta8": { - "type": "package", "sha512": "M2Fg4gBigELMjFow/w44eGZe7VICY6naOe8R6jKbtsXpDTKFsfCuXxpZcUfIgI791hs7Ney88IjxZ3XudsgJeg==", + "type": "package", "files": [ + "Microsoft.Framework.Configuration.1.0.0-beta8.nupkg", + "Microsoft.Framework.Configuration.1.0.0-beta8.nupkg.sha512", + "Microsoft.Framework.Configuration.nuspec", "lib/dnx451/Microsoft.Framework.Configuration.dll", "lib/dnx451/Microsoft.Framework.Configuration.xml", "lib/dnxcore50/Microsoft.Framework.Configuration.dll", @@ -10271,16 +4631,16 @@ "lib/dotnet/Microsoft.Framework.Configuration.dll", "lib/dotnet/Microsoft.Framework.Configuration.xml", "lib/net45/Microsoft.Framework.Configuration.dll", - "lib/net45/Microsoft.Framework.Configuration.xml", - "Microsoft.Framework.Configuration.1.0.0-beta8.nupkg", - "Microsoft.Framework.Configuration.1.0.0-beta8.nupkg.sha512", - "Microsoft.Framework.Configuration.nuspec" + "lib/net45/Microsoft.Framework.Configuration.xml" ] }, "Microsoft.Framework.Configuration.Abstractions/1.0.0-beta8": { - "type": "package", "sha512": "WH5zC6AkShx6VZzZT37tl0QPROkR6zdffACEIPiDyPyqyf+DtWN5Z6v1q9OD5q6CfAij18EwqWaF1eWtYBigNw==", + "type": "package", "files": [ + "Microsoft.Framework.Configuration.Abstractions.1.0.0-beta8.nupkg", + "Microsoft.Framework.Configuration.Abstractions.1.0.0-beta8.nupkg.sha512", + "Microsoft.Framework.Configuration.Abstractions.nuspec", "lib/dnx451/Microsoft.Framework.Configuration.Abstractions.dll", "lib/dnx451/Microsoft.Framework.Configuration.Abstractions.xml", "lib/dnxcore50/Microsoft.Framework.Configuration.Abstractions.dll", @@ -10288,16 +4648,16 @@ "lib/dotnet/Microsoft.Framework.Configuration.Abstractions.dll", "lib/dotnet/Microsoft.Framework.Configuration.Abstractions.xml", "lib/net45/Microsoft.Framework.Configuration.Abstractions.dll", - "lib/net45/Microsoft.Framework.Configuration.Abstractions.xml", - "Microsoft.Framework.Configuration.Abstractions.1.0.0-beta8.nupkg", - "Microsoft.Framework.Configuration.Abstractions.1.0.0-beta8.nupkg.sha512", - "Microsoft.Framework.Configuration.Abstractions.nuspec" + "lib/net45/Microsoft.Framework.Configuration.Abstractions.xml" ] }, "Microsoft.Framework.Configuration.Binder/1.0.0-beta8": { - "type": "package", "sha512": "6BWMPvDuy6nTe32z2JWsoiLljVhWagWkDhcN9EbvN4/ihGbnCWzKPIUCJ3a/1s9k/ZsWp4VZtxeuSaZ+60qQbQ==", + "type": "package", "files": [ + "Microsoft.Framework.Configuration.Binder.1.0.0-beta8.nupkg", + "Microsoft.Framework.Configuration.Binder.1.0.0-beta8.nupkg.sha512", + "Microsoft.Framework.Configuration.Binder.nuspec", "lib/dnx451/Microsoft.Framework.Configuration.Binder.dll", "lib/dnx451/Microsoft.Framework.Configuration.Binder.xml", "lib/dnxcore50/Microsoft.Framework.Configuration.Binder.dll", @@ -10305,31 +4665,31 @@ "lib/dotnet/Microsoft.Framework.Configuration.Binder.dll", "lib/dotnet/Microsoft.Framework.Configuration.Binder.xml", "lib/net45/Microsoft.Framework.Configuration.Binder.dll", - "lib/net45/Microsoft.Framework.Configuration.Binder.xml", - "Microsoft.Framework.Configuration.Binder.1.0.0-beta8.nupkg", - "Microsoft.Framework.Configuration.Binder.1.0.0-beta8.nupkg.sha512", - "Microsoft.Framework.Configuration.Binder.nuspec" + "lib/net45/Microsoft.Framework.Configuration.Binder.xml" ] }, "Microsoft.Framework.Configuration.FileExtensions/1.0.0-beta8": { - "type": "package", "sha512": "+hsytl/Puj6Gc6U934Y7n3hfdkJG7lfvasIwY0RnAmsTSxJ6pF54A/mR3d/EwSHyUyMlgSnSHeoTXZ4u8RfJsA==", + "type": "package", "files": [ + "Microsoft.Framework.Configuration.FileExtensions.1.0.0-beta8.nupkg", + "Microsoft.Framework.Configuration.FileExtensions.1.0.0-beta8.nupkg.sha512", + "Microsoft.Framework.Configuration.FileExtensions.nuspec", "lib/dnx451/Microsoft.Framework.Configuration.FileExtensions.dll", "lib/dnx451/Microsoft.Framework.Configuration.FileExtensions.xml", "lib/dotnet/Microsoft.Framework.Configuration.FileExtensions.dll", "lib/dotnet/Microsoft.Framework.Configuration.FileExtensions.xml", "lib/net45/Microsoft.Framework.Configuration.FileExtensions.dll", - "lib/net45/Microsoft.Framework.Configuration.FileExtensions.xml", - "Microsoft.Framework.Configuration.FileExtensions.1.0.0-beta8.nupkg", - "Microsoft.Framework.Configuration.FileExtensions.1.0.0-beta8.nupkg.sha512", - "Microsoft.Framework.Configuration.FileExtensions.nuspec" + "lib/net45/Microsoft.Framework.Configuration.FileExtensions.xml" ] }, "Microsoft.Framework.Configuration.Json/1.0.0-beta8": { - "type": "package", "sha512": "dfA9iuKWri9gVaAY7XEQMXP5C+PMalC+0vDhv9AUuawwuTeQm11JhOwXzdPu/FM4Bbwm33kHlVkLrHRW403XIA==", + "type": "package", "files": [ + "Microsoft.Framework.Configuration.Json.1.0.0-beta8.nupkg", + "Microsoft.Framework.Configuration.Json.1.0.0-beta8.nupkg.sha512", + "Microsoft.Framework.Configuration.Json.nuspec", "lib/dnx451/Microsoft.Framework.Configuration.Json.dll", "lib/dnx451/Microsoft.Framework.Configuration.Json.xml", "lib/dnxcore50/Microsoft.Framework.Configuration.Json.dll", @@ -10337,16 +4697,16 @@ "lib/dotnet/Microsoft.Framework.Configuration.Json.dll", "lib/dotnet/Microsoft.Framework.Configuration.Json.xml", "lib/net45/Microsoft.Framework.Configuration.Json.dll", - "lib/net45/Microsoft.Framework.Configuration.Json.xml", - "Microsoft.Framework.Configuration.Json.1.0.0-beta8.nupkg", - "Microsoft.Framework.Configuration.Json.1.0.0-beta8.nupkg.sha512", - "Microsoft.Framework.Configuration.Json.nuspec" + "lib/net45/Microsoft.Framework.Configuration.Json.xml" ] }, "Microsoft.Framework.ConfigurationModel/1.0.0-beta4": { - "type": "package", "sha512": "VD5MhmQRhYVfxyDs1fyruPTj3pYwLMV5dXJkPUVg1KKbJ9qr/tEn3frJA1NN1jdeVBt1RrW5FXr+wWG9YoO9Yg==", + "type": "package", "files": [ + "Microsoft.Framework.ConfigurationModel.1.0.0-beta4.nupkg", + "Microsoft.Framework.ConfigurationModel.1.0.0-beta4.nupkg.sha512", + "Microsoft.Framework.ConfigurationModel.nuspec", "lib/dnx451/Microsoft.Framework.ConfigurationModel.dll", "lib/dnx451/Microsoft.Framework.ConfigurationModel.xml", "lib/dnxcore50/Microsoft.Framework.ConfigurationModel.dll", @@ -10354,16 +4714,16 @@ "lib/net45/Microsoft.Framework.ConfigurationModel.dll", "lib/net45/Microsoft.Framework.ConfigurationModel.xml", "lib/portable-net451+win81+wpa81/Microsoft.Framework.ConfigurationModel.dll", - "lib/portable-net451+win81+wpa81/Microsoft.Framework.ConfigurationModel.xml", - "Microsoft.Framework.ConfigurationModel.1.0.0-beta4.nupkg", - "Microsoft.Framework.ConfigurationModel.1.0.0-beta4.nupkg.sha512", - "Microsoft.Framework.ConfigurationModel.nuspec" + "lib/portable-net451+win81+wpa81/Microsoft.Framework.ConfigurationModel.xml" ] }, "Microsoft.Framework.ConfigurationModel.Interfaces/1.0.0-beta4": { - "type": "package", "sha512": "lU9+gyEz+jSeR+QsZxZtDf0U2DS/pl3I8/m7YeKjHMnjqoxUKFbSOpzegll7bhq0Alw7/8gF2Byrcy+PlzRc/g==", + "type": "package", "files": [ + "Microsoft.Framework.ConfigurationModel.Interfaces.1.0.0-beta4.nupkg", + "Microsoft.Framework.ConfigurationModel.Interfaces.1.0.0-beta4.nupkg.sha512", + "Microsoft.Framework.ConfigurationModel.Interfaces.nuspec", "lib/dnx451/Microsoft.Framework.ConfigurationModel.Interfaces.dll", "lib/dnx451/Microsoft.Framework.ConfigurationModel.Interfaces.xml", "lib/dnxcore50/Microsoft.Framework.ConfigurationModel.Interfaces.dll", @@ -10371,121 +4731,118 @@ "lib/net45/Microsoft.Framework.ConfigurationModel.Interfaces.dll", "lib/net45/Microsoft.Framework.ConfigurationModel.Interfaces.xml", "lib/portable-net451+win81+wpa81/Microsoft.Framework.ConfigurationModel.Interfaces.dll", - "lib/portable-net451+win81+wpa81/Microsoft.Framework.ConfigurationModel.Interfaces.xml", - "Microsoft.Framework.ConfigurationModel.Interfaces.1.0.0-beta4.nupkg", - "Microsoft.Framework.ConfigurationModel.Interfaces.1.0.0-beta4.nupkg.sha512", - "Microsoft.Framework.ConfigurationModel.Interfaces.nuspec" + "lib/portable-net451+win81+wpa81/Microsoft.Framework.ConfigurationModel.Interfaces.xml" ] }, "Microsoft.Framework.ConfigurationModel.Json/1.0.0-beta4": { - "type": "package", "sha512": "ygdShf5lzRsqe7/pMNSaiq6AcAy0eIhp8WFUtYfqQnsxhMJFcw/VlIFvie8+DkYhacdmGkXTF4OGopjjwfg02A==", + "type": "package", "files": [ + "Microsoft.Framework.ConfigurationModel.Json.1.0.0-beta4.nupkg", + "Microsoft.Framework.ConfigurationModel.Json.1.0.0-beta4.nupkg.sha512", + "Microsoft.Framework.ConfigurationModel.Json.nuspec", "lib/dnx451/Microsoft.Framework.ConfigurationModel.Json.dll", "lib/dnx451/Microsoft.Framework.ConfigurationModel.Json.xml", "lib/dnxcore50/Microsoft.Framework.ConfigurationModel.Json.dll", "lib/dnxcore50/Microsoft.Framework.ConfigurationModel.Json.xml", "lib/net45/Microsoft.Framework.ConfigurationModel.Json.dll", - "lib/net45/Microsoft.Framework.ConfigurationModel.Json.xml", - "Microsoft.Framework.ConfigurationModel.Json.1.0.0-beta4.nupkg", - "Microsoft.Framework.ConfigurationModel.Json.1.0.0-beta4.nupkg.sha512", - "Microsoft.Framework.ConfigurationModel.Json.nuspec" + "lib/net45/Microsoft.Framework.ConfigurationModel.Json.xml" ] }, "Microsoft.Framework.Runtime.Interfaces/1.0.0-beta4": { - "type": "package", "sha512": "RrZdqvUm8QbgxnZQuafYGo6NezoKx7VqAfAtHVzoKBm3GSV8xlPh90u1fsGhNCv37xJNk5PuRCa4Mq27ko7pLw==", + "type": "package", "files": [ + "Microsoft.Framework.Runtime.Interfaces.1.0.0-beta4.nupkg", + "Microsoft.Framework.Runtime.Interfaces.1.0.0-beta4.nupkg.sha512", + "Microsoft.Framework.Runtime.Interfaces.nuspec", "lib/dnx451/Microsoft.Framework.Runtime.Interfaces.dll", "lib/dnx451/Microsoft.Framework.Runtime.Interfaces.xml", "lib/dnxcore50/Microsoft.Framework.Runtime.Interfaces.dll", - "lib/dnxcore50/Microsoft.Framework.Runtime.Interfaces.xml", - "Microsoft.Framework.Runtime.Interfaces.1.0.0-beta4.nupkg", - "Microsoft.Framework.Runtime.Interfaces.1.0.0-beta4.nupkg.sha512", - "Microsoft.Framework.Runtime.Interfaces.nuspec" + "lib/dnxcore50/Microsoft.Framework.Runtime.Interfaces.xml" ] }, "Microsoft.IdentityModel.Logging/1.0.0-rc1-211161024": { - "type": "package", "sha512": "creXwpCysjVpRx+IsZSf8mxCT9lZ/VY1T6wR6zFFulPXV1UZysVURmLd/IgJg/p9pAtcrU5yIbRC9Az3j73+nA==", + "type": "package", "files": [ + "Microsoft.IdentityModel.Logging.1.0.0-rc1-211161024.nupkg", + "Microsoft.IdentityModel.Logging.1.0.0-rc1-211161024.nupkg.sha512", + "Microsoft.IdentityModel.Logging.nuspec", "lib/dotnet5.4/Microsoft.IdentityModel.Logging.dll", "lib/dotnet5.4/Microsoft.IdentityModel.Logging.xml", "lib/net451/Microsoft.IdentityModel.Logging.dll", - "lib/net451/Microsoft.IdentityModel.Logging.xml", - "Microsoft.IdentityModel.Logging.1.0.0-rc1-211161024.nupkg", - "Microsoft.IdentityModel.Logging.1.0.0-rc1-211161024.nupkg.sha512", - "Microsoft.IdentityModel.Logging.nuspec" + "lib/net451/Microsoft.IdentityModel.Logging.xml" ] }, "Microsoft.IdentityModel.Protocols/2.0.0-rc1-211161024": { - "type": "package", "sha512": "1/I4nkZCKjNg9jIASv2sNIi8RvdsYLi/efbylZEw+zvtBgNfNEvdCeAsIVyX3A4pR0yQwtIdz+kTYRTs2diSEQ==", + "type": "package", "files": [ + "Microsoft.IdentityModel.Protocols.2.0.0-rc1-211161024.nupkg", + "Microsoft.IdentityModel.Protocols.2.0.0-rc1-211161024.nupkg.sha512", + "Microsoft.IdentityModel.Protocols.nuspec", "lib/dotnet5.4/Microsoft.IdentityModel.Protocols.dll", "lib/dotnet5.4/Microsoft.IdentityModel.Protocols.xml", "lib/net451/Microsoft.IdentityModel.Protocols.dll", - "lib/net451/Microsoft.IdentityModel.Protocols.xml", - "Microsoft.IdentityModel.Protocols.2.0.0-rc1-211161024.nupkg", - "Microsoft.IdentityModel.Protocols.2.0.0-rc1-211161024.nupkg.sha512", - "Microsoft.IdentityModel.Protocols.nuspec" + "lib/net451/Microsoft.IdentityModel.Protocols.xml" ] }, "Microsoft.IdentityModel.Protocols.OpenIdConnect/2.0.0-rc1-211161024": { - "type": "package", "sha512": "4xW6TBJ4ys3p+KtHwzddq8pkdxFoUtRlHYcHECK9YtZxkp4omLA9NUGrHRZ57RGN31vPdSzX3u1ujiA2Bqpo+A==", + "type": "package", "files": [ + "Microsoft.IdentityModel.Protocols.OpenIdConnect.2.0.0-rc1-211161024.nupkg", + "Microsoft.IdentityModel.Protocols.OpenIdConnect.2.0.0-rc1-211161024.nupkg.sha512", + "Microsoft.IdentityModel.Protocols.OpenIdConnect.nuspec", "lib/dotnet5.4/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", "lib/dotnet5.4/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "Microsoft.IdentityModel.Protocols.OpenIdConnect.2.0.0-rc1-211161024.nupkg", - "Microsoft.IdentityModel.Protocols.OpenIdConnect.2.0.0-rc1-211161024.nupkg.sha512", - "Microsoft.IdentityModel.Protocols.OpenIdConnect.nuspec" + "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml" ] }, "Microsoft.Net.Http.Headers/1.0.0-rc1-final": { - "type": "package", "sha512": "Y10hkmHQZLieW3J6J+vTiq86vifmJ7Vc2zrwNR349oAaUGjTHL0ws6rqHn0JDIcawBna4AE3OBNsL9vuZuE8bw==", + "type": "package", "files": [ + "Microsoft.Net.Http.Headers.1.0.0-rc1-final.nupkg", + "Microsoft.Net.Http.Headers.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Net.Http.Headers.nuspec", "lib/dotnet5.4/Microsoft.Net.Http.Headers.dll", "lib/dotnet5.4/Microsoft.Net.Http.Headers.xml", "lib/net451/Microsoft.Net.Http.Headers.dll", - "lib/net451/Microsoft.Net.Http.Headers.xml", - "Microsoft.Net.Http.Headers.1.0.0-rc1-final.nupkg", - "Microsoft.Net.Http.Headers.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Net.Http.Headers.nuspec" + "lib/net451/Microsoft.Net.Http.Headers.xml" ] }, "Microsoft.Net.Http.Server/1.0.0-rc1-final": { - "type": "package", "sha512": "XQMZUf0SbVzjTX0vyiVr0LP3Cygy1wCPDZmDla9Yeqc07HvSZ02Sg4qTSKiNV2h85yY3Dka+MNmL3XoYmnsEAA==", + "type": "package", "files": [ + "Microsoft.Net.Http.Server.1.0.0-rc1-final.nupkg", + "Microsoft.Net.Http.Server.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Net.Http.Server.nuspec", "lib/dotnet5.4/Microsoft.Net.Http.Server.dll", "lib/dotnet5.4/Microsoft.Net.Http.Server.xml", "lib/net451/Microsoft.Net.Http.Server.dll", - "lib/net451/Microsoft.Net.Http.Server.xml", - "Microsoft.Net.Http.Server.1.0.0-rc1-final.nupkg", - "Microsoft.Net.Http.Server.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Net.Http.Server.nuspec" + "lib/net451/Microsoft.Net.Http.Server.xml" ] }, "Microsoft.Net.WebSockets/1.0.0-rc1-final": { - "type": "package", "sha512": "DIzmA7s2sNBEq+Wz5cCPFAYKx1WGiLE7iCVrA7Lvhxf/+EzPWeaKlCYvjSHTPNViZsX/eUI5vsiDmqK/5tZjQA==", + "type": "package", "files": [ + "Microsoft.Net.WebSockets.1.0.0-rc1-final.nupkg", + "Microsoft.Net.WebSockets.1.0.0-rc1-final.nupkg.sha512", + "Microsoft.Net.WebSockets.nuspec", "lib/dotnet5.4/Microsoft.Net.WebSockets.dll", "lib/dotnet5.4/Microsoft.Net.WebSockets.xml", "lib/net451/Microsoft.Net.WebSockets.dll", - "lib/net451/Microsoft.Net.WebSockets.xml", - "Microsoft.Net.WebSockets.1.0.0-rc1-final.nupkg", - "Microsoft.Net.WebSockets.1.0.0-rc1-final.nupkg.sha512", - "Microsoft.Net.WebSockets.nuspec" + "lib/net451/Microsoft.Net.WebSockets.xml" ] }, "Microsoft.NETCore.Platforms/1.0.1-beta-23516": { - "type": "package", "sha512": "YPVzF1z1qhI3am4/I3EWEjn5hxm1wnIbHTRp6nrfKOoj0NBGtubVTTQmC3l5VZIbwmygiMVbWdbFhzJwWJXNEw==", + "type": "package", "files": [ "Microsoft.NETCore.Platforms.1.0.1-beta-23516.nupkg", "Microsoft.NETCore.Platforms.1.0.1-beta-23516.nupkg.sha512", @@ -10494,8 +4851,8 @@ ] }, "Microsoft.NETCore.Targets/1.0.1-beta-23516": { - "type": "package", "sha512": "11J+6atPf0UYQnpr8aKy6Xx+O9rAf/46OyODFY8gFbKkW/PVIh7iSHziukpvWZ+hI/ieFklGMopDU1MiUELutQ==", + "type": "package", "files": [ "Microsoft.NETCore.Targets.1.0.1-beta-23516.nupkg", "Microsoft.NETCore.Targets.1.0.1-beta-23516.nupkg.sha512", @@ -10504,48 +4861,54 @@ ] }, "Microsoft.Owin/2.1.0": { - "type": "package", "sha512": "lk0kK64mlmcmtWX8YOYkZsnZKDoGEzMZhe8e1bcP+FFcgD4f2QfKwvu5Z8Bh8WS0VO7Rgk+DJ0hwW0k+S/UGMg==", + "type": "package", "files": [ - "lib/net40/Microsoft.Owin.dll", - "lib/net40/Microsoft.Owin.XML", - "lib/net45/Microsoft.Owin.dll", - "lib/net45/Microsoft.Owin.XML", "Microsoft.Owin.2.1.0.nupkg", "Microsoft.Owin.2.1.0.nupkg.sha512", - "Microsoft.Owin.nuspec" + "Microsoft.Owin.nuspec", + "lib/net40/Microsoft.Owin.XML", + "lib/net40/Microsoft.Owin.dll", + "lib/net45/Microsoft.Owin.XML", + "lib/net45/Microsoft.Owin.dll" ] }, "Microsoft.Owin.Security/2.1.0": { - "type": "package", "sha512": "4n1V0p+O6W1L0xHUM8Cjp2Y+MmmUkiCZv6PvRNIDCJD9zlerBJa2HECo9lUiWC+KuasQJ3QxB1FmipNBxdXXIQ==", + "type": "package", "files": [ - "lib/net45/Microsoft.Owin.Security.dll", - "lib/net45/Microsoft.Owin.Security.XML", "Microsoft.Owin.Security.2.1.0.nupkg", "Microsoft.Owin.Security.2.1.0.nupkg.sha512", - "Microsoft.Owin.Security.nuspec" + "Microsoft.Owin.Security.nuspec", + "lib/net45/Microsoft.Owin.Security.XML", + "lib/net45/Microsoft.Owin.Security.dll" ] }, "Microsoft.Web.Infrastructure/1.0.0": { - "type": "package", "sha512": "FNmvLn5m2LTU/Rs2KWVo0SIIh9Ek+U0ojex7xeDaSHw/zgEP77A8vY5cVWgUtBGS8MJfDGNn8rpXJWEIQaPwTg==", + "type": "package", "files": [ - "lib/net40/Microsoft.Web.Infrastructure.dll", "Microsoft.Web.Infrastructure.1.0.0.nupkg", "Microsoft.Web.Infrastructure.1.0.0.nupkg.sha512", - "Microsoft.Web.Infrastructure.nuspec" + "Microsoft.Web.Infrastructure.nuspec", + "lib/net40/Microsoft.Web.Infrastructure.dll" ] }, "MimeKit/1.3.0-beta7": { - "type": "package", "sha512": "M7F4OnPXfcI4AljQUdvok29vz3DEruiqIBDIn6zGVdFQpNpaVbmrp80YLX9SH2hJO+8fSOX6/k3ScUXqZheFSQ==", + "type": "package", "files": [ - "lib/dotnet5.4/MimeKit.dll", - "lib/dotnet5.4/MimeKit.xml", + "MimeKit.1.3.0-beta7.nupkg", + "MimeKit.1.3.0-beta7.nupkg.sha512", + "MimeKit.nuspec", "lib/MonoAndroid10/BouncyCastle.dll", "lib/MonoAndroid10/MimeKit.dll", "lib/MonoAndroid10/MimeKit.xml", + "lib/Xamarin.iOS10/BouncyCastle.dll", + "lib/Xamarin.iOS10/MimeKit.dll", + "lib/Xamarin.iOS10/MimeKit.xml", + "lib/dotnet5.4/MimeKit.dll", + "lib/dotnet5.4/MimeKit.xml", "lib/net35/BouncyCastle.dll", "lib/net35/BouncyCastle.xml", "lib/net35/MimeKit.dll", @@ -10567,19 +4930,15 @@ "lib/portable-net45+win+wp80+MonoAndroid10+Xamarin.iOS10+MonoTouch10/Portable.Text.Encoding.dll", "lib/wpa81/MimeKit.dll", "lib/wpa81/MimeKit.xml", - "lib/wpa81/Portable.Text.Encoding.dll", - "lib/Xamarin.iOS10/BouncyCastle.dll", - "lib/Xamarin.iOS10/MimeKit.dll", - "lib/Xamarin.iOS10/MimeKit.xml", - "MimeKit.1.3.0-beta7.nupkg", - "MimeKit.1.3.0-beta7.nupkg.sha512", - "MimeKit.nuspec" + "lib/wpa81/Portable.Text.Encoding.dll" ] }, "Newtonsoft.Json/7.0.1": { - "type": "package", "sha512": "q3V4KLetMLnt1gpAVWgtXnHjKs0UG/RalBc29u2ZKxd5t5Ze4JBL5WiiYIklJyK/5CRiIiNwigVQUo0FgbsuWA==", + "type": "package", "files": [ + "Newtonsoft.Json.7.0.1.nupkg.sha512", + "Newtonsoft.Json.nuspec", "lib/net20/Newtonsoft.Json.dll", "lib/net20/Newtonsoft.Json.xml", "lib/net35/Newtonsoft.Json.dll", @@ -10592,15 +4951,16 @@ "lib/portable-net40+sl5+wp80+win8+wpa81/Newtonsoft.Json.xml", "lib/portable-net45+wp80+win8+wpa81+dnxcore50/Newtonsoft.Json.dll", "lib/portable-net45+wp80+win8+wpa81+dnxcore50/Newtonsoft.Json.xml", - "Newtonsoft.Json.7.0.1.nupkg.sha512", - "Newtonsoft.Json.nuspec", "tools/install.ps1" ] }, "Npgsql/3.1.0-alpha6": { - "type": "package", "sha512": "gYOozZ+PPgrw7zogHlBONFjZxNnagSWkDfVXZTamJy9zWRU/+O6pCHgEsEwsdENGaYC0RFvQUbDo5lIYA8kjpA==", + "type": "package", "files": [ + "Npgsql.3.1.0-alpha6.nupkg", + "Npgsql.3.1.0-alpha6.nupkg.sha512", + "Npgsql.nuspec", "app/project.json", "app/rewrite-async", "app/rewrite-async.cmd", @@ -10611,67 +4971,66 @@ "lib/net45/Npgsql.dll", "lib/net45/Npgsql.xml", "lib/net452/Npgsql.dll", - "lib/net452/Npgsql.xml", - "Npgsql.3.1.0-alpha6.nupkg", - "Npgsql.3.1.0-alpha6.nupkg.sha512", - "Npgsql.nuspec" + "lib/net452/Npgsql.xml" ] }, "Owin/1.0.0": { - "type": "package", "sha512": "OseTFniKmyp76mEzOBwIKGBRS5eMoYNkMKaMXOpxx9jv88+b6mh1rSaw43vjBOItNhaLFG3d0a20PfHyibH5sw==", + "type": "package", "files": [ - "lib/net40/Owin.dll", - "Owin.1.0.0.nupkg", "Owin.1.0.0.nupkg.sha512", - "Owin.nuspec" + "Owin.nuspec", + "lib/net40/Owin.dll" ] }, "PayPalButtonManagerSDK/2.10.109": { - "type": "package", "sha512": "6l95DlflMld+OmzOGaw3T6Mb9rZrywO1pR8jbafyvu34FId4osC1oo5RfgQVY0rwHkeTG359U+X3BPL6vVRT8Q==", + "type": "package", "files": [ - "lib/net20/PayPalButtonManagerSDK.dll", "PayPalButtonManagerSDK.2.10.109.nupkg", "PayPalButtonManagerSDK.2.10.109.nupkg.sha512", - "PayPalButtonManagerSDK.nuspec" + "PayPalButtonManagerSDK.nuspec", + "lib/net20/PayPalButtonManagerSDK.dll" ] }, "PayPalCoreSDK/1.7.1": { - "type": "package", "sha512": "hGOLo3X2vgOpOWJI91+vlBgr/Dchk3xZAF0bdIpKiAwjlRKMjzSC4zuT1eGwmQ8uVL1IaGBZwNGklyRHDniYlQ==", + "type": "package", "files": [ + "PayPalCoreSDK.1.7.1.nupkg", + "PayPalCoreSDK.1.7.1.nupkg.sha512", + "PayPalCoreSDK.nuspec", "lib/net20/PayPalCoreSDK.dll", "lib/net35/PayPalCoreSDK.dll", "lib/net40/PayPalCoreSDK.dll", "lib/net45/PayPalCoreSDK.dll", - "lib/net451/PayPalCoreSDK.dll", - "PayPalCoreSDK.1.7.1.nupkg", - "PayPalCoreSDK.1.7.1.nupkg.sha512", - "PayPalCoreSDK.nuspec" + "lib/net451/PayPalCoreSDK.dll" ] }, "Remotion.Linq/2.0.1": { - "type": "package", "sha512": "SIO6HDH6CU9GC2IZGBrc6q5X5vRhfatXrg9cVavCEG9W6v5e88b+vXjmLGQEorch4sYEIImRr+ODyUMyrmrqAg==", + "type": "package", "files": [ - "lib/net35/Remotion.Linq.dll", + "Remotion.Linq.2.0.1.nupkg", + "Remotion.Linq.2.0.1.nupkg.sha512", + "Remotion.Linq.nuspec", "lib/net35/Remotion.Linq.XML", - "lib/net40/Remotion.Linq.dll", + "lib/net35/Remotion.Linq.dll", "lib/net40/Remotion.Linq.XML", + "lib/net40/Remotion.Linq.dll", "lib/net45/Remotion.Linq.dll", "lib/net45/Remotion.Linq.xml", "lib/portable-net45+win+wpa81+wp80/Remotion.Linq.dll", - "lib/portable-net45+win+wpa81+wp80/Remotion.Linq.xml", - "Remotion.Linq.2.0.1.nupkg", - "Remotion.Linq.2.0.1.nupkg.sha512", - "Remotion.Linq.nuspec" + "lib/portable-net45+win+wpa81+wp80/Remotion.Linq.xml" ] }, "System.Collections/4.0.0": { + "sha512": "9hnfBZJ2POQlFL8rKAckFUm1bLN4JyRPBk9sb+OldHKqJ0V3Hbj2+nbLGy5jd9BFk0RqGk5iJtM1weNTMveLMQ==", "type": "package", - "sha512": "i2vsGDIEbWdHcUSNDPKZP/ZWod6o740el7mGTCy0dqbCxQh74W4QoC+klUwPEtGEFuvzJ7bJgvwJqscosVNyZQ==", "files": [ + "License.rtf", + "System.Collections.4.0.0.nupkg.sha512", + "System.Collections.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -10680,7 +5039,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Collections.dll", + "ref/dotnet/System.Collections.xml", "ref/dotnet/de/System.Collections.xml", "ref/dotnet/es/System.Collections.xml", "ref/dotnet/fr/System.Collections.xml", @@ -10688,13 +5050,11 @@ "ref/dotnet/ja/System.Collections.xml", "ref/dotnet/ko/System.Collections.xml", "ref/dotnet/ru/System.Collections.xml", - "ref/dotnet/System.Collections.dll", - "ref/dotnet/System.Collections.xml", "ref/dotnet/zh-hans/System.Collections.xml", "ref/dotnet/zh-hant/System.Collections.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Collections.dll", + "ref/netcore50/System.Collections.xml", "ref/netcore50/de/System.Collections.xml", "ref/netcore50/es/System.Collections.xml", "ref/netcore50/fr/System.Collections.xml", @@ -10702,37 +5062,35 @@ "ref/netcore50/ja/System.Collections.xml", "ref/netcore50/ko/System.Collections.xml", "ref/netcore50/ru/System.Collections.xml", - "ref/netcore50/System.Collections.dll", - "ref/netcore50/System.Collections.xml", "ref/netcore50/zh-hans/System.Collections.xml", "ref/netcore50/zh-hant/System.Collections.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Collections.4.0.0.nupkg", - "System.Collections.4.0.0.nupkg.sha512", - "System.Collections.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Collections.Immutable/1.1.37": { - "type": "package", "sha512": "fTpqwZYBzoklTT+XjTRK8KxvmrGkYHzBiylCcKyQcxiOM8k+QvhNBxRvFHDWzy4OEP5f8/9n+xQ9mEgEXY+muA==", + "type": "package", "files": [ + "System.Collections.Immutable.1.1.37.nupkg", + "System.Collections.Immutable.1.1.37.nupkg.sha512", + "System.Collections.Immutable.nuspec", "lib/dotnet/System.Collections.Immutable.dll", "lib/dotnet/System.Collections.Immutable.xml", "lib/portable-net45+win8+wp8+wpa81/System.Collections.Immutable.dll", - "lib/portable-net45+win8+wp8+wpa81/System.Collections.Immutable.xml", - "System.Collections.Immutable.1.1.37.nupkg", - "System.Collections.Immutable.1.1.37.nupkg.sha512", - "System.Collections.Immutable.nuspec" + "lib/portable-net45+win8+wp8+wpa81/System.Collections.Immutable.xml" ] }, "System.Diagnostics.Debug/4.0.0": { + "sha512": "rXoXj+8CZLisWUUpwNb1D7x88LByF9LwvGTth5Ow0aLwLImkDRBzG03Nev19jo6FBtNwuclvVhEM9nJVBhaoYw==", "type": "package", - "sha512": "AYJsLLGDVTC/nyURjgAo7Lpye0+HuSkcQujUf+NgQVdC/C/ky5NyamQHCforHJzgqspitMMtBe8B4UBdGXy1zQ==", "files": [ + "License.rtf", + "System.Diagnostics.Debug.4.0.0.nupkg.sha512", + "System.Diagnostics.Debug.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -10741,7 +5099,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Diagnostics.Debug.dll", + "ref/dotnet/System.Diagnostics.Debug.xml", "ref/dotnet/de/System.Diagnostics.Debug.xml", "ref/dotnet/es/System.Diagnostics.Debug.xml", "ref/dotnet/fr/System.Diagnostics.Debug.xml", @@ -10749,13 +5110,11 @@ "ref/dotnet/ja/System.Diagnostics.Debug.xml", "ref/dotnet/ko/System.Diagnostics.Debug.xml", "ref/dotnet/ru/System.Diagnostics.Debug.xml", - "ref/dotnet/System.Diagnostics.Debug.dll", - "ref/dotnet/System.Diagnostics.Debug.xml", "ref/dotnet/zh-hans/System.Diagnostics.Debug.xml", "ref/dotnet/zh-hant/System.Diagnostics.Debug.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Debug.dll", + "ref/netcore50/System.Diagnostics.Debug.xml", "ref/netcore50/de/System.Diagnostics.Debug.xml", "ref/netcore50/es/System.Diagnostics.Debug.xml", "ref/netcore50/fr/System.Diagnostics.Debug.xml", @@ -10763,38 +5122,35 @@ "ref/netcore50/ja/System.Diagnostics.Debug.xml", "ref/netcore50/ko/System.Diagnostics.Debug.xml", "ref/netcore50/ru/System.Diagnostics.Debug.xml", - "ref/netcore50/System.Diagnostics.Debug.dll", - "ref/netcore50/System.Diagnostics.Debug.xml", "ref/netcore50/zh-hans/System.Diagnostics.Debug.xml", "ref/netcore50/zh-hant/System.Diagnostics.Debug.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Diagnostics.Debug.4.0.0.nupkg", - "System.Diagnostics.Debug.4.0.0.nupkg.sha512", - "System.Diagnostics.Debug.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Diagnostics.DiagnosticSource/4.0.0-beta-23516": { + "sha512": "WHVhr5/p8UDjqNV7l9PCxZgOufE2tO4XOWva9pau9c7PzJJTdB1By6scO5dgHLpmlB/u4y27Y9AzT8AqtG8sxw==", "type": "package", - "serviceable": true, - "sha512": "0uDR/UOmFCNPDCyHEPHhCrk6c1iRnDp00YqwSZ8Qf5aaaJjm4WXnf4Q9xZw4OoApsSiODSypDMdpQU24IxR16A==", "files": [ + "System.Diagnostics.DiagnosticSource.4.0.0-beta-23516.nupkg.sha512", + "System.Diagnostics.DiagnosticSource.nuspec", "lib/dotnet5.2/System.Diagnostics.DiagnosticSource.dll", "lib/dotnet5.2/System.Diagnostics.DiagnosticSource.xml", "lib/portable-net45+win8+wp8+wpa81/System.Diagnostics.DiagnosticSource.dll", - "lib/portable-net45+win8+wp8+wpa81/System.Diagnostics.DiagnosticSource.xml", - "System.Diagnostics.DiagnosticSource.4.0.0-beta-23516.nupkg", - "System.Diagnostics.DiagnosticSource.4.0.0-beta-23516.nupkg.sha512", - "System.Diagnostics.DiagnosticSource.nuspec" + "lib/portable-net45+win8+wp8+wpa81/System.Diagnostics.DiagnosticSource.xml" ] }, "System.Diagnostics.Tracing/4.0.0": { - "type": "package", "sha512": "tzqQJPgD4bKs0eE5Gx9HEsxiHSBGcL42PImkjhwXTQK6iQbLTTB9mi+G7mUyEjlH8LUcm7F5QHEs+O+LpruOrQ==", + "type": "package", "files": [ + "License.rtf", + "System.Diagnostics.Tracing.4.0.0.nupkg", + "System.Diagnostics.Tracing.4.0.0.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -10802,7 +5158,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", "ref/dotnet/de/System.Diagnostics.Tracing.xml", "ref/dotnet/es/System.Diagnostics.Tracing.xml", "ref/dotnet/fr/System.Diagnostics.Tracing.xml", @@ -10810,13 +5169,11 @@ "ref/dotnet/ja/System.Diagnostics.Tracing.xml", "ref/dotnet/ko/System.Diagnostics.Tracing.xml", "ref/dotnet/ru/System.Diagnostics.Tracing.xml", - "ref/dotnet/System.Diagnostics.Tracing.dll", - "ref/dotnet/System.Diagnostics.Tracing.xml", "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Tracing.dll", + "ref/netcore50/System.Diagnostics.Tracing.xml", "ref/netcore50/de/System.Diagnostics.Tracing.xml", "ref/netcore50/es/System.Diagnostics.Tracing.xml", "ref/netcore50/fr/System.Diagnostics.Tracing.xml", @@ -10824,23 +5181,21 @@ "ref/netcore50/ja/System.Diagnostics.Tracing.xml", "ref/netcore50/ko/System.Diagnostics.Tracing.xml", "ref/netcore50/ru/System.Diagnostics.Tracing.xml", - "ref/netcore50/System.Diagnostics.Tracing.dll", - "ref/netcore50/System.Diagnostics.Tracing.xml", "ref/netcore50/zh-hans/System.Diagnostics.Tracing.xml", "ref/netcore50/zh-hant/System.Diagnostics.Tracing.xml", "ref/win8/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Diagnostics.Tracing.4.0.0.nupkg", - "System.Diagnostics.Tracing.4.0.0.nupkg.sha512", - "System.Diagnostics.Tracing.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Globalization/4.0.0": { + "sha512": "Ea68l3ISMh5pdrcRlxQic5G1h3egbvgysKSdvPe266XlPcmkzKUdl91TQ155mlsvw1tBPgjCnw6iItzAo0x9/A==", "type": "package", - "sha512": "IBJyTo1y7ZtzzoJUA60T1XPvNTyw/wfFmjFoBFtlYfkekIOtD/AzDDIg0YdUa7eNtFEfliED2R7HdppTdU4t5A==", "files": [ + "License.rtf", + "System.Globalization.4.0.0.nupkg.sha512", + "System.Globalization.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -10849,7 +5204,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Globalization.dll", + "ref/dotnet/System.Globalization.xml", "ref/dotnet/de/System.Globalization.xml", "ref/dotnet/es/System.Globalization.xml", "ref/dotnet/fr/System.Globalization.xml", @@ -10857,13 +5215,11 @@ "ref/dotnet/ja/System.Globalization.xml", "ref/dotnet/ko/System.Globalization.xml", "ref/dotnet/ru/System.Globalization.xml", - "ref/dotnet/System.Globalization.dll", - "ref/dotnet/System.Globalization.xml", "ref/dotnet/zh-hans/System.Globalization.xml", "ref/dotnet/zh-hant/System.Globalization.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Globalization.dll", + "ref/netcore50/System.Globalization.xml", "ref/netcore50/de/System.Globalization.xml", "ref/netcore50/es/System.Globalization.xml", "ref/netcore50/fr/System.Globalization.xml", @@ -10871,50 +5227,48 @@ "ref/netcore50/ja/System.Globalization.xml", "ref/netcore50/ko/System.Globalization.xml", "ref/netcore50/ru/System.Globalization.xml", - "ref/netcore50/System.Globalization.dll", - "ref/netcore50/System.Globalization.xml", "ref/netcore50/zh-hans/System.Globalization.xml", "ref/netcore50/zh-hant/System.Globalization.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Globalization.4.0.0.nupkg", - "System.Globalization.4.0.0.nupkg.sha512", - "System.Globalization.nuspec" + "ref/xamarinmac20/_._" ] }, "System.IdentityModel.Tokens/5.0.0-rc1-211161024": { - "type": "package", "sha512": "UbFu6NIPI8pDL/lZlajUQ06OQNJvkpUWYBDIZr+HaqiXseE0Jja1kXTFg2gxKpjuruRinR7e7+/qnAAE3/BPcw==", + "type": "package", "files": [ + "System.IdentityModel.Tokens.5.0.0-rc1-211161024.nupkg", + "System.IdentityModel.Tokens.5.0.0-rc1-211161024.nupkg.sha512", + "System.IdentityModel.Tokens.nuspec", "lib/dotnet5.4/System.IdentityModel.Tokens.dll", "lib/dotnet5.4/System.IdentityModel.Tokens.xml", "lib/net451/System.IdentityModel.Tokens.dll", - "lib/net451/System.IdentityModel.Tokens.xml", - "System.IdentityModel.Tokens.5.0.0-rc1-211161024.nupkg", - "System.IdentityModel.Tokens.5.0.0-rc1-211161024.nupkg.sha512", - "System.IdentityModel.Tokens.nuspec" + "lib/net451/System.IdentityModel.Tokens.xml" ] }, "System.IdentityModel.Tokens.Jwt/5.0.0-rc1-211161024": { - "type": "package", "sha512": "A/mqsC0pFbFnsZ6OR17PPkNz4OEu0Xt8wK83FNDLvsoWMhvKS2DDFnn9dqzUxKDLEIZUXwWWCJQJritmvXsf1g==", + "type": "package", "files": [ + "System.IdentityModel.Tokens.Jwt.5.0.0-rc1-211161024.nupkg", + "System.IdentityModel.Tokens.Jwt.5.0.0-rc1-211161024.nupkg.sha512", + "System.IdentityModel.Tokens.Jwt.nuspec", "lib/dotnet5.4/System.IdentityModel.Tokens.Jwt.dll", "lib/dotnet5.4/System.IdentityModel.Tokens.Jwt.xml", "lib/net451/System.IdentityModel.Tokens.Jwt.dll", - "lib/net451/System.IdentityModel.Tokens.Jwt.xml", - "System.IdentityModel.Tokens.Jwt.5.0.0-rc1-211161024.nupkg", - "System.IdentityModel.Tokens.Jwt.5.0.0-rc1-211161024.nupkg.sha512", - "System.IdentityModel.Tokens.Jwt.nuspec" + "lib/net451/System.IdentityModel.Tokens.Jwt.xml" ] }, "System.IO/4.0.0": { + "sha512": "PNGS1n6wxAsn/hxIRlpsSBTkLOnlYKiU8dJ1+PC0w9Nfnu7JbRt2b/pc0MYjgCh3V2ZxDa5rpwrDPbpzuyyu3g==", "type": "package", - "sha512": "MoCHQ0u5n0OMwUS8OX4Gl48qKiQziSW5cXvt82d+MmAcsLq9OL90+ihnu/aJ1h6OOYcBswrZAEuApfZha9w2lg==", "files": [ + "License.rtf", + "System.IO.4.0.0.nupkg.sha512", + "System.IO.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -10923,7 +5277,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.IO.dll", + "ref/dotnet/System.IO.xml", "ref/dotnet/de/System.IO.xml", "ref/dotnet/es/System.IO.xml", "ref/dotnet/fr/System.IO.xml", @@ -10931,13 +5288,11 @@ "ref/dotnet/ja/System.IO.xml", "ref/dotnet/ko/System.IO.xml", "ref/dotnet/ru/System.IO.xml", - "ref/dotnet/System.IO.dll", - "ref/dotnet/System.IO.xml", "ref/dotnet/zh-hans/System.IO.xml", "ref/dotnet/zh-hant/System.IO.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.IO.dll", + "ref/netcore50/System.IO.xml", "ref/netcore50/de/System.IO.xml", "ref/netcore50/es/System.IO.xml", "ref/netcore50/fr/System.IO.xml", @@ -10945,30 +5300,30 @@ "ref/netcore50/ja/System.IO.xml", "ref/netcore50/ko/System.IO.xml", "ref/netcore50/ru/System.IO.xml", - "ref/netcore50/System.IO.dll", - "ref/netcore50/System.IO.xml", "ref/netcore50/zh-hans/System.IO.xml", "ref/netcore50/zh-hant/System.IO.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.IO.4.0.0.nupkg", - "System.IO.4.0.0.nupkg.sha512", - "System.IO.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Linq/4.0.0": { - "type": "package", "sha512": "r6Hlc+ytE6m/9UBr+nNRRdoJEWjoeQiT3L3lXYFDHoXk3VYsRBCDNXrawcexw7KPLaH0zamQLiAb6avhZ50cGg==", + "type": "package", "files": [ + "System.Linq.4.0.0.nupkg", + "System.Linq.4.0.0.nupkg.sha512", + "System.Linq.nuspec", "lib/dotnet/System.Linq.dll", "lib/net45/_._", "lib/netcore50/System.Linq.dll", "lib/win8/_._", "lib/wp80/_._", "lib/wpa81/_._", + "ref/dotnet/System.Linq.dll", + "ref/dotnet/System.Linq.xml", "ref/dotnet/de/System.Linq.xml", "ref/dotnet/es/System.Linq.xml", "ref/dotnet/fr/System.Linq.xml", @@ -10976,8 +5331,6 @@ "ref/dotnet/ja/System.Linq.xml", "ref/dotnet/ko/System.Linq.xml", "ref/dotnet/ru/System.Linq.xml", - "ref/dotnet/System.Linq.dll", - "ref/dotnet/System.Linq.xml", "ref/dotnet/zh-hans/System.Linq.xml", "ref/dotnet/zh-hant/System.Linq.xml", "ref/net45/_._", @@ -10985,41 +5338,39 @@ "ref/netcore50/System.Linq.xml", "ref/win8/_._", "ref/wp80/_._", - "ref/wpa81/_._", - "System.Linq.4.0.0.nupkg", - "System.Linq.4.0.0.nupkg.sha512", - "System.Linq.nuspec" + "ref/wpa81/_._" ] }, "System.Numerics.Vectors/4.1.1-beta-23516": { + "sha512": "jphbCfQB30LZBC/8kNQtAaaCcKzCFIFnRyUvYapNOozvleUvwI6sYG9d3/WamMcalnNcHDgIlQ713QOv9aweVA==", "type": "package", - "serviceable": true, - "sha512": "FCYCEjc3BXBTpVZTxMqf2m/sGYyDzLwICy5lNKgZzT8WfshJhsTGjJuETwsh1Cwi6bksw9YiTB6yeeWBBJDnTA==", "files": [ - "lib/dotnet5.4/System.Numerics.Vectors.dll", + "System.Numerics.Vectors.4.1.1-beta-23516.nupkg.sha512", + "System.Numerics.Vectors.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", - "lib/net46/_._", + "lib/dotnet5.4/System.Numerics.Vectors.dll", "lib/net46/System.Numerics.Vectors.dll", + "lib/net46/_._", "lib/portable-net45+win8/System.Numerics.Vectors.dll", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "ref/dotnet5.4/System.Numerics.Vectors.dll", "ref/MonoAndroid10/_._", "ref/MonoTouch10/_._", - "ref/net46/_._", + "ref/dotnet5.4/System.Numerics.Vectors.dll", "ref/net46/System.Numerics.Vectors.dll", + "ref/net46/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Numerics.Vectors.4.1.1-beta-23516.nupkg", - "System.Numerics.Vectors.4.1.1-beta-23516.nupkg.sha512", - "System.Numerics.Vectors.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Reflection/4.0.0": { + "sha512": "VSciKOmUb5AjAqvjRix5KzLJhcZt0ZhGN+c/fwJFaHxNWZswagrrENrRwfgtpgzwblChajZR2mb9XvSSOM8/Tg==", "type": "package", - "sha512": "g96Rn8XuG7y4VfxPj/jnXroRJdQ8L3iN3k3zqsuzk4k3Nq4KMXARYiIO4BLW4GwX06uQpuYwRMcAC/aF117knQ==", "files": [ + "License.rtf", + "System.Reflection.4.0.0.nupkg.sha512", + "System.Reflection.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -11028,7 +5379,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Reflection.dll", + "ref/dotnet/System.Reflection.xml", "ref/dotnet/de/System.Reflection.xml", "ref/dotnet/es/System.Reflection.xml", "ref/dotnet/fr/System.Reflection.xml", @@ -11036,13 +5390,11 @@ "ref/dotnet/ja/System.Reflection.xml", "ref/dotnet/ko/System.Reflection.xml", "ref/dotnet/ru/System.Reflection.xml", - "ref/dotnet/System.Reflection.dll", - "ref/dotnet/System.Reflection.xml", "ref/dotnet/zh-hans/System.Reflection.xml", "ref/dotnet/zh-hant/System.Reflection.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Reflection.dll", + "ref/netcore50/System.Reflection.xml", "ref/netcore50/de/System.Reflection.xml", "ref/netcore50/es/System.Reflection.xml", "ref/netcore50/fr/System.Reflection.xml", @@ -11050,30 +5402,30 @@ "ref/netcore50/ja/System.Reflection.xml", "ref/netcore50/ko/System.Reflection.xml", "ref/netcore50/ru/System.Reflection.xml", - "ref/netcore50/System.Reflection.dll", - "ref/netcore50/System.Reflection.xml", "ref/netcore50/zh-hans/System.Reflection.xml", "ref/netcore50/zh-hant/System.Reflection.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Reflection.4.0.0.nupkg", - "System.Reflection.4.0.0.nupkg.sha512", - "System.Reflection.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Reflection.Extensions/4.0.0": { - "type": "package", "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "type": "package", "files": [ + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec", "lib/DNXCore50/System.Reflection.Extensions.dll", "lib/net45/_._", "lib/netcore50/System.Reflection.Extensions.dll", "lib/win8/_._", "lib/wp80/_._", "lib/wpa81/_._", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", "ref/dotnet/de/System.Reflection.Extensions.xml", "ref/dotnet/es/System.Reflection.Extensions.xml", "ref/dotnet/fr/System.Reflection.Extensions.xml", @@ -11081,8 +5433,6 @@ "ref/dotnet/ja/System.Reflection.Extensions.xml", "ref/dotnet/ko/System.Reflection.Extensions.xml", "ref/dotnet/ru/System.Reflection.Extensions.xml", - "ref/dotnet/System.Reflection.Extensions.dll", - "ref/dotnet/System.Reflection.Extensions.xml", "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", "ref/net45/_._", @@ -11091,36 +5441,36 @@ "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", - "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", - "System.Reflection.Extensions.4.0.0.nupkg", - "System.Reflection.Extensions.4.0.0.nupkg.sha512", - "System.Reflection.Extensions.nuspec" + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll" ] }, "System.Reflection.Metadata/1.1.0": { + "sha512": "RLIE4sSt2zngMLuqM6YmxBH99mTumtT4DNZE4+msfEaInUP5iCLQT+BHPl+2cjSAP1pdALyAjLB8RtCB+WGGWQ==", "type": "package", - "serviceable": true, - "sha512": "a8VsRm/B0Ik1o5FumSMWmpwbG7cvIIajAYhzTTy9VB9XItByJDQHGZkQTIAdsvVJ6MI5O3uH/lb0izgQDlDIWA==", "files": [ + "System.Reflection.Metadata.1.1.0.nupkg.sha512", + "System.Reflection.Metadata.nuspec", "lib/dotnet5.2/System.Reflection.Metadata.dll", "lib/dotnet5.2/System.Reflection.Metadata.xml", "lib/portable-net45+win8/System.Reflection.Metadata.dll", - "lib/portable-net45+win8/System.Reflection.Metadata.xml", - "System.Reflection.Metadata.1.1.0.nupkg", - "System.Reflection.Metadata.1.1.0.nupkg.sha512", - "System.Reflection.Metadata.nuspec" + "lib/portable-net45+win8/System.Reflection.Metadata.xml" ] }, "System.Reflection.Primitives/4.0.0": { - "type": "package", "sha512": "n9S0XpKv2ruc17FSnaiX6nV47VfHTZ1wLjKZlAirUZCvDQCH71mVp+Ohabn0xXLh5pK2PKp45HCxkqu5Fxn/lA==", + "type": "package", "files": [ + "System.Reflection.Primitives.4.0.0.nupkg", + "System.Reflection.Primitives.4.0.0.nupkg.sha512", + "System.Reflection.Primitives.nuspec", "lib/DNXCore50/System.Reflection.Primitives.dll", "lib/net45/_._", "lib/netcore50/System.Reflection.Primitives.dll", "lib/win8/_._", "lib/wp80/_._", "lib/wpa81/_._", + "ref/dotnet/System.Reflection.Primitives.dll", + "ref/dotnet/System.Reflection.Primitives.xml", "ref/dotnet/de/System.Reflection.Primitives.xml", "ref/dotnet/es/System.Reflection.Primitives.xml", "ref/dotnet/fr/System.Reflection.Primitives.xml", @@ -11128,8 +5478,6 @@ "ref/dotnet/ja/System.Reflection.Primitives.xml", "ref/dotnet/ko/System.Reflection.Primitives.xml", "ref/dotnet/ru/System.Reflection.Primitives.xml", - "ref/dotnet/System.Reflection.Primitives.dll", - "ref/dotnet/System.Reflection.Primitives.xml", "ref/dotnet/zh-hans/System.Reflection.Primitives.xml", "ref/dotnet/zh-hant/System.Reflection.Primitives.xml", "ref/net45/_._", @@ -11138,22 +5486,24 @@ "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", - "runtimes/win8-aot/lib/netcore50/System.Reflection.Primitives.dll", - "System.Reflection.Primitives.4.0.0.nupkg", - "System.Reflection.Primitives.4.0.0.nupkg.sha512", - "System.Reflection.Primitives.nuspec" + "runtimes/win8-aot/lib/netcore50/System.Reflection.Primitives.dll" ] }, "System.Resources.ResourceManager/4.0.0": { - "type": "package", "sha512": "qmqeZ4BJgjfU+G2JbrZt4Dk1LsMxO4t+f/9HarNY6w8pBgweO6jT+cknUH7c3qIrGvyUqraBhU45Eo6UtA0fAw==", + "type": "package", "files": [ + "System.Resources.ResourceManager.4.0.0.nupkg", + "System.Resources.ResourceManager.4.0.0.nupkg.sha512", + "System.Resources.ResourceManager.nuspec", "lib/DNXCore50/System.Resources.ResourceManager.dll", "lib/net45/_._", "lib/netcore50/System.Resources.ResourceManager.dll", "lib/win8/_._", "lib/wp80/_._", "lib/wpa81/_._", + "ref/dotnet/System.Resources.ResourceManager.dll", + "ref/dotnet/System.Resources.ResourceManager.xml", "ref/dotnet/de/System.Resources.ResourceManager.xml", "ref/dotnet/es/System.Resources.ResourceManager.xml", "ref/dotnet/fr/System.Resources.ResourceManager.xml", @@ -11161,8 +5511,6 @@ "ref/dotnet/ja/System.Resources.ResourceManager.xml", "ref/dotnet/ko/System.Resources.ResourceManager.xml", "ref/dotnet/ru/System.Resources.ResourceManager.xml", - "ref/dotnet/System.Resources.ResourceManager.dll", - "ref/dotnet/System.Resources.ResourceManager.xml", "ref/dotnet/zh-hans/System.Resources.ResourceManager.xml", "ref/dotnet/zh-hant/System.Resources.ResourceManager.xml", "ref/net45/_._", @@ -11171,16 +5519,16 @@ "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", - "runtimes/win8-aot/lib/netcore50/System.Resources.ResourceManager.dll", - "System.Resources.ResourceManager.4.0.0.nupkg", - "System.Resources.ResourceManager.4.0.0.nupkg.sha512", - "System.Resources.ResourceManager.nuspec" + "runtimes/win8-aot/lib/netcore50/System.Resources.ResourceManager.dll" ] }, "System.Runtime/4.0.0": { + "sha512": "A+xwHCqwWJ1x4iH69ErYyAx11clbav/uDgg1Y8hjV4Dyn9ZnX96dZvXxQtmb9P4Ep++YUYjZwl0GPD4KqJbVOg==", "type": "package", - "sha512": "Uq9epame8hEqJlj4KaWb67dDJvj4IM37jRFGVeFbugRdPz48bR0voyBhrbf3iSa2tAmlkg4lsa6BUOL9iwlMew==", "files": [ + "License.rtf", + "System.Runtime.4.0.0.nupkg.sha512", + "System.Runtime.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -11189,7 +5537,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Runtime.dll", + "ref/dotnet/System.Runtime.xml", "ref/dotnet/de/System.Runtime.xml", "ref/dotnet/es/System.Runtime.xml", "ref/dotnet/fr/System.Runtime.xml", @@ -11197,13 +5548,11 @@ "ref/dotnet/ja/System.Runtime.xml", "ref/dotnet/ko/System.Runtime.xml", "ref/dotnet/ru/System.Runtime.xml", - "ref/dotnet/System.Runtime.dll", - "ref/dotnet/System.Runtime.xml", "ref/dotnet/zh-hans/System.Runtime.xml", "ref/dotnet/zh-hant/System.Runtime.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Runtime.dll", + "ref/netcore50/System.Runtime.xml", "ref/netcore50/de/System.Runtime.xml", "ref/netcore50/es/System.Runtime.xml", "ref/netcore50/fr/System.Runtime.xml", @@ -11211,24 +5560,22 @@ "ref/netcore50/ja/System.Runtime.xml", "ref/netcore50/ko/System.Runtime.xml", "ref/netcore50/ru/System.Runtime.xml", - "ref/netcore50/System.Runtime.dll", - "ref/netcore50/System.Runtime.xml", "ref/netcore50/zh-hans/System.Runtime.xml", "ref/netcore50/zh-hant/System.Runtime.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Runtime.4.0.0.nupkg", - "System.Runtime.4.0.0.nupkg.sha512", - "System.Runtime.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Runtime.Extensions/4.0.0": { + "sha512": "O3oV7QFU0JrlgdKtrsVoo3HFK9lLH55KSl9NrxpNMl40BdAqdi7UQPUODlNtIPBUPyGvM5+wQzfhZw5r7YfYhQ==", "type": "package", - "sha512": "zPzwoJcA7qar/b5Ihhzfcdr3vBOR8FIg7u//Qc5mqyAriasXuMFVraBZ5vOQq5asfun9ryNEL8Z2BOlUK5QRqA==", "files": [ + "License.rtf", + "System.Runtime.Extensions.4.0.0.nupkg.sha512", + "System.Runtime.Extensions.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -11237,7 +5584,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Runtime.Extensions.dll", + "ref/dotnet/System.Runtime.Extensions.xml", "ref/dotnet/de/System.Runtime.Extensions.xml", "ref/dotnet/es/System.Runtime.Extensions.xml", "ref/dotnet/fr/System.Runtime.Extensions.xml", @@ -11245,13 +5595,11 @@ "ref/dotnet/ja/System.Runtime.Extensions.xml", "ref/dotnet/ko/System.Runtime.Extensions.xml", "ref/dotnet/ru/System.Runtime.Extensions.xml", - "ref/dotnet/System.Runtime.Extensions.dll", - "ref/dotnet/System.Runtime.Extensions.xml", "ref/dotnet/zh-hans/System.Runtime.Extensions.xml", "ref/dotnet/zh-hant/System.Runtime.Extensions.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Runtime.Extensions.dll", + "ref/netcore50/System.Runtime.Extensions.xml", "ref/netcore50/de/System.Runtime.Extensions.xml", "ref/netcore50/es/System.Runtime.Extensions.xml", "ref/netcore50/fr/System.Runtime.Extensions.xml", @@ -11259,24 +5607,23 @@ "ref/netcore50/ja/System.Runtime.Extensions.xml", "ref/netcore50/ko/System.Runtime.Extensions.xml", "ref/netcore50/ru/System.Runtime.Extensions.xml", - "ref/netcore50/System.Runtime.Extensions.dll", - "ref/netcore50/System.Runtime.Extensions.xml", "ref/netcore50/zh-hans/System.Runtime.Extensions.xml", "ref/netcore50/zh-hant/System.Runtime.Extensions.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Runtime.Extensions.4.0.0.nupkg", - "System.Runtime.Extensions.4.0.0.nupkg.sha512", - "System.Runtime.Extensions.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Runtime.InteropServices/4.0.0": { - "type": "package", "sha512": "J8GBB0OsVuKJXR412x6uZdoyNi4y9OMjjJRHPutRHjqujuvthus6Xdxn/i8J1lL2PK+2jWCLpZp72h8x73hkLg==", + "type": "package", "files": [ + "License.rtf", + "System.Runtime.InteropServices.4.0.0.nupkg", + "System.Runtime.InteropServices.4.0.0.nupkg.sha512", + "System.Runtime.InteropServices.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -11284,7 +5631,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Runtime.InteropServices.dll", + "ref/dotnet/System.Runtime.InteropServices.xml", "ref/dotnet/de/System.Runtime.InteropServices.xml", "ref/dotnet/es/System.Runtime.InteropServices.xml", "ref/dotnet/fr/System.Runtime.InteropServices.xml", @@ -11292,13 +5642,11 @@ "ref/dotnet/ja/System.Runtime.InteropServices.xml", "ref/dotnet/ko/System.Runtime.InteropServices.xml", "ref/dotnet/ru/System.Runtime.InteropServices.xml", - "ref/dotnet/System.Runtime.InteropServices.dll", - "ref/dotnet/System.Runtime.InteropServices.xml", "ref/dotnet/zh-hans/System.Runtime.InteropServices.xml", "ref/dotnet/zh-hant/System.Runtime.InteropServices.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Runtime.InteropServices.dll", + "ref/netcore50/System.Runtime.InteropServices.xml", "ref/netcore50/de/System.Runtime.InteropServices.xml", "ref/netcore50/es/System.Runtime.InteropServices.xml", "ref/netcore50/fr/System.Runtime.InteropServices.xml", @@ -11306,23 +5654,21 @@ "ref/netcore50/ja/System.Runtime.InteropServices.xml", "ref/netcore50/ko/System.Runtime.InteropServices.xml", "ref/netcore50/ru/System.Runtime.InteropServices.xml", - "ref/netcore50/System.Runtime.InteropServices.dll", - "ref/netcore50/System.Runtime.InteropServices.xml", "ref/netcore50/zh-hans/System.Runtime.InteropServices.xml", "ref/netcore50/zh-hant/System.Runtime.InteropServices.xml", "ref/win8/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Runtime.InteropServices.4.0.0.nupkg", - "System.Runtime.InteropServices.4.0.0.nupkg.sha512", - "System.Runtime.InteropServices.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Text.Encoding/4.0.0": { + "sha512": "k4kc8Xq2Bs4x11WWtt6XMa+igtLrZAwJx1ZaB4D3/Sm4LFHSzT4mOOJIDOHa/ePyojOUtwLQdT0ywEnV5nl/9g==", "type": "package", - "sha512": "AMxFNOXpA6Ab8swULbXuJmoT2K5w6TnV3ObF5wsmEcIHQUJghoZtDVfVHb08O2wW15mOSI1i9Wg0Dx0pY13o8g==", "files": [ + "License.rtf", + "System.Text.Encoding.4.0.0.nupkg.sha512", + "System.Text.Encoding.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -11331,7 +5677,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Text.Encoding.dll", + "ref/dotnet/System.Text.Encoding.xml", "ref/dotnet/de/System.Text.Encoding.xml", "ref/dotnet/es/System.Text.Encoding.xml", "ref/dotnet/fr/System.Text.Encoding.xml", @@ -11339,13 +5688,11 @@ "ref/dotnet/ja/System.Text.Encoding.xml", "ref/dotnet/ko/System.Text.Encoding.xml", "ref/dotnet/ru/System.Text.Encoding.xml", - "ref/dotnet/System.Text.Encoding.dll", - "ref/dotnet/System.Text.Encoding.xml", "ref/dotnet/zh-hans/System.Text.Encoding.xml", "ref/dotnet/zh-hant/System.Text.Encoding.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.dll", + "ref/netcore50/System.Text.Encoding.xml", "ref/netcore50/de/System.Text.Encoding.xml", "ref/netcore50/es/System.Text.Encoding.xml", "ref/netcore50/fr/System.Text.Encoding.xml", @@ -11353,24 +5700,23 @@ "ref/netcore50/ja/System.Text.Encoding.xml", "ref/netcore50/ko/System.Text.Encoding.xml", "ref/netcore50/ru/System.Text.Encoding.xml", - "ref/netcore50/System.Text.Encoding.dll", - "ref/netcore50/System.Text.Encoding.xml", "ref/netcore50/zh-hans/System.Text.Encoding.xml", "ref/netcore50/zh-hant/System.Text.Encoding.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Text.Encoding.4.0.0.nupkg", - "System.Text.Encoding.4.0.0.nupkg.sha512", - "System.Text.Encoding.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Text.Encoding.Extensions/4.0.0": { - "type": "package", "sha512": "FktA77+2DC0S5oRhgM569pbzFrcA45iQpYiI7+YKl68B6TfI2N5TQbXqSWlh2YXKoFXHi2RFwPMha2lxiFJZ6A==", + "type": "package", "files": [ + "License.rtf", + "System.Text.Encoding.Extensions.4.0.0.nupkg", + "System.Text.Encoding.Extensions.4.0.0.nupkg.sha512", + "System.Text.Encoding.Extensions.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -11379,7 +5725,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Text.Encoding.Extensions.dll", + "ref/dotnet/System.Text.Encoding.Extensions.xml", "ref/dotnet/de/System.Text.Encoding.Extensions.xml", "ref/dotnet/es/System.Text.Encoding.Extensions.xml", "ref/dotnet/fr/System.Text.Encoding.Extensions.xml", @@ -11387,13 +5736,11 @@ "ref/dotnet/ja/System.Text.Encoding.Extensions.xml", "ref/dotnet/ko/System.Text.Encoding.Extensions.xml", "ref/dotnet/ru/System.Text.Encoding.Extensions.xml", - "ref/dotnet/System.Text.Encoding.Extensions.dll", - "ref/dotnet/System.Text.Encoding.Extensions.xml", "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml", "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.Extensions.dll", + "ref/netcore50/System.Text.Encoding.Extensions.xml", "ref/netcore50/de/System.Text.Encoding.Extensions.xml", "ref/netcore50/es/System.Text.Encoding.Extensions.xml", "ref/netcore50/fr/System.Text.Encoding.Extensions.xml", @@ -11401,24 +5748,22 @@ "ref/netcore50/ja/System.Text.Encoding.Extensions.xml", "ref/netcore50/ko/System.Text.Encoding.Extensions.xml", "ref/netcore50/ru/System.Text.Encoding.Extensions.xml", - "ref/netcore50/System.Text.Encoding.Extensions.dll", - "ref/netcore50/System.Text.Encoding.Extensions.xml", "ref/netcore50/zh-hans/System.Text.Encoding.Extensions.xml", "ref/netcore50/zh-hant/System.Text.Encoding.Extensions.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Text.Encoding.Extensions.4.0.0.nupkg", - "System.Text.Encoding.Extensions.4.0.0.nupkg.sha512", - "System.Text.Encoding.Extensions.nuspec" + "ref/xamarinmac20/_._" ] }, "System.Threading/4.0.0": { + "sha512": "ZsZ8i38K9t14aLQJ+19WUFoS7fVA/3QLHxgE1O6+xICYtl/VzUv17NCWFCNkBn6pfsIlC8XOjRQqiKzjdUGotw==", "type": "package", - "sha512": "H6O/9gUrjPDNYanh/7OFGAZHjVXvEuITD0RcnjfvIV04HOGrOPqUBU0kmz9RIX/7YGgCQn1o1S2DX6Cuv8kVGQ==", "files": [ + "License.rtf", + "System.Threading.4.0.0.nupkg.sha512", + "System.Threading.nuspec", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/net45/_._", @@ -11427,7 +5772,10 @@ "lib/wpa81/_._", "lib/xamarinios10/_._", "lib/xamarinmac20/_._", - "License.rtf", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/dotnet/System.Threading.dll", + "ref/dotnet/System.Threading.xml", "ref/dotnet/de/System.Threading.xml", "ref/dotnet/es/System.Threading.xml", "ref/dotnet/fr/System.Threading.xml", @@ -11435,13 +5783,11 @@ "ref/dotnet/ja/System.Threading.xml", "ref/dotnet/ko/System.Threading.xml", "ref/dotnet/ru/System.Threading.xml", - "ref/dotnet/System.Threading.dll", - "ref/dotnet/System.Threading.xml", "ref/dotnet/zh-hans/System.Threading.xml", "ref/dotnet/zh-hant/System.Threading.xml", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", "ref/net45/_._", + "ref/netcore50/System.Threading.dll", + "ref/netcore50/System.Threading.xml", "ref/netcore50/de/System.Threading.xml", "ref/netcore50/es/System.Threading.xml", "ref/netcore50/fr/System.Threading.xml", @@ -11449,42 +5795,37 @@ "ref/netcore50/ja/System.Threading.xml", "ref/netcore50/ko/System.Threading.xml", "ref/netcore50/ru/System.Threading.xml", - "ref/netcore50/System.Threading.dll", - "ref/netcore50/System.Threading.xml", "ref/netcore50/zh-hans/System.Threading.xml", "ref/netcore50/zh-hant/System.Threading.xml", "ref/win8/_._", "ref/wp80/_._", "ref/wpa81/_._", "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "System.Threading.4.0.0.nupkg", - "System.Threading.4.0.0.nupkg.sha512", - "System.Threading.nuspec" + "ref/xamarinmac20/_._" ] }, "WebGrease/1.5.2": { - "type": "package", "sha512": "VoyDSOOugLx3q5IyOgEcjeYZQOqV9VWZQT57UtN4szlYhAmOcEjVfKWXbtRqBuX43pgyL9E7nMSIPoryC8Cu1Q==", + "type": "package", "files": [ - "lib/WebGrease.dll", - "tools/install.ps1", - "tools/uninstall.ps1", - "tools/WG.exe", "WebGrease.1.5.2.nupkg", "WebGrease.1.5.2.nupkg.sha512", - "WebGrease.nuspec" + "WebGrease.nuspec", + "lib/WebGrease.dll", + "tools/WG.exe", + "tools/install.ps1", + "tools/uninstall.ps1" ] }, "Zlib.Portable.Signed/1.11.0": { - "type": "package", "sha512": "1f4itCxlSBxU8kf85qUmx1+d0iHKLeZK8S7ilb4w0t+uV+/xtOUUVOEAnFMG5uHVBc7L+ycZjWQoA+a1GZKYjg==", + "type": "package", "files": [ - "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.dll", - "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.xml", "Zlib.Portable.Signed.1.11.0.nupkg", "Zlib.Portable.Signed.1.11.0.nupkg.sha512", - "Zlib.Portable.Signed.nuspec" + "Zlib.Portable.Signed.nuspec", + "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.dll", + "lib/portable-net4+sl5+wp8+win8+wpa81+MonoTouch+MonoAndroid/Zlib.Portable.xml" ] } }, @@ -11497,60 +5838,63 @@ "EntityFramework.Sqlite >= 7.0.0-rc1-*", "EntityFramework7.Npgsql >= 3.1.0-*", "EntityFramework7.Npgsql.Design >= 3.1.0-*", - "Google.Apis.Core >= 1.11.1", "Google.Apis >= 1.11.1", + "Google.Apis.Core >= 1.11.1", "MailKit >= 1.3.0-beta7", "MarkdownDeep-av.NET >= 1.5.2", "Microsoft.AspNet.Authentication.Cookies >= 1.0.0-rc1-*", "Microsoft.AspNet.Authentication.Facebook >= 1.0.0-rc1-final", + "Microsoft.AspNet.Authentication.JwtBearer >= 1.0.0-rc1-final", + "Microsoft.AspNet.Authentication.OpenIdConnect >= 1.0.0-rc1-final", "Microsoft.AspNet.Authentication.Twitter >= 1.0.0-rc1-final", "Microsoft.AspNet.Authorization >= 1.0.0-rc1-final", + "Microsoft.AspNet.DataProtection >= 1.0.0-rc1-final", + "Microsoft.AspNet.DataProtection.SystemWeb >= 1.0.0-rc1-final", "Microsoft.AspNet.Diagnostics.Entity >= 7.0.0-rc1-*", "Microsoft.AspNet.Http.Abstractions >= 1.0.0-rc1-final", - "Microsoft.AspNet.Identity.EntityFramework >= 3.0.0-rc1-*", "Microsoft.AspNet.IISPlatformHandler >= 1.0.0-rc1-*", + "Microsoft.AspNet.Identity.EntityFramework >= 3.0.0-rc1-*", "Microsoft.AspNet.Localization >= 1.0.0-rc1-final", "Microsoft.AspNet.Mvc >= 6.0.0-rc1-*", "Microsoft.AspNet.Mvc.TagHelpers >= 6.0.0-rc1-*", + "Microsoft.AspNet.Owin >= 1.0.0-rc1-final", "Microsoft.AspNet.Server.Kestrel >= 1.0.0-rc1-final", - "Microsoft.AspNet.SignalR.Core >= 2.2.0", "Microsoft.AspNet.Server.WebListener >= 1.0.0-rc1-final", - "Microsoft.AspNet.StaticFiles >= 1.0.0-rc1-*", + "Microsoft.AspNet.Session >= 1.0.0-rc1-final", + "Microsoft.AspNet.SignalR.Core >= 2.2.0", "Microsoft.AspNet.SignalR.JS >= 2.2.0", + "Microsoft.AspNet.StaticFiles >= 1.0.0-rc1-*", "Microsoft.AspNet.Tooling.Razor >= 1.0.0-rc1-*", + "Microsoft.AspNet.Web.Optimization >= 1.1.3", "Microsoft.AspNet.WebSockets.Server >= 1.0.0-rc1-final", - "Microsoft.AspNet.Authentication.OpenIdConnect >= 1.0.0-rc1-final", + "Microsoft.AspNetCore.Authentication.OAuth >= 0.0.1-alpha", + "Microsoft.Extensions.CodeGeneration >= 1.0.0-rc1-final", + "Microsoft.Extensions.CodeGenerators.Mvc >= 1.0.0-rc1-final", "Microsoft.Extensions.Configuration.Abstractions >= 1.0.0-rc1-final", "Microsoft.Extensions.Configuration.FileProviderExtensions >= 1.0.0-rc1-*", "Microsoft.Extensions.Configuration.Json >= 1.0.0-rc1-*", "Microsoft.Extensions.Configuration.UserSecrets >= 1.0.0-rc1-*", - "Microsoft.Extensions.Logging >= 1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Console >= 1.0.0-rc1-final", - "Microsoft.Extensions.Logging.Debug >= 1.0.0-rc1-final", "Microsoft.Extensions.DependencyInjection.Abstractions >= 1.0.0-rc1-final", "Microsoft.Extensions.Globalization.CultureInfoCache >= 1.0.0-rc1-final", "Microsoft.Extensions.Localization >= 1.0.0-rc1-final", "Microsoft.Extensions.Localization.Abstractions >= 1.0.0-rc1-final", - "Microsoft.Extensions.CodeGeneration >= 1.0.0-rc1-final", + "Microsoft.Extensions.Logging >= 1.0.0-rc1-final", + "Microsoft.Extensions.Logging.Console >= 1.0.0-rc1-final", + "Microsoft.Extensions.Logging.Debug >= 1.0.0-rc1-final", + "Microsoft.Extensions.Options >= 0.0.1-alpha", "Microsoft.Extensions.PlatformAbstractions >= 1.0.0-rc1-final", - "Microsoft.Extensions.CodeGenerators.Mvc >= 1.0.0-rc1-final", - "Microsoft.Framework.ConfigurationModel.Json >= 1.0.0-beta4", + "Microsoft.Extensions.WebEncoders >= 1.0.0-rc1-final", + "Microsoft.Extensions.WebEncoders.Core >= 1.0.0-rc1-final", "Microsoft.Framework.Configuration.Abstractions >= 1.0.0-beta8", "Microsoft.Framework.Configuration.Binder >= 1.0.0-beta8", "Microsoft.Framework.Configuration.Json >= 1.0.0-beta8", - "Microsoft.AspNet.Session >= 1.0.0-rc1-final", + "Microsoft.Framework.ConfigurationModel.Json >= 1.0.0-beta4", "Microsoft.NETCore.Platforms >= 1.0.1-beta-23516", - "Microsoft.AspNet.Web.Optimization >= 1.1.3", - "Microsoft.Extensions.WebEncoders.Core >= 1.0.0-rc1-final", - "Microsoft.AspNetCore.Authentication.OAuth >= 0.0.1-alpha", - "Microsoft.Extensions.Options >= 0.0.1-alpha", - "Microsoft.Extensions.WebEncoders >= 1.0.0-rc1-final", - "Microsoft.AspNet.DataProtection >= 1.0.0-rc1-final", - "Microsoft.AspNet.DataProtection.SystemWeb >= 1.0.0-rc1-final", - "Microsoft.AspNet.Authentication.JwtBearer >= 1.0.0-rc1-final", - "PayPalCoreSDK >= 1.7.1", - "PayPalButtonManagerSDK >= 2.10.109" + "PayPalButtonManagerSDK >= 2.10.109", + "PayPalCoreSDK >= 1.7.1" ], "DNX,Version=v4.5.1": [] - } + }, + "tools": {}, + "projectFileToolGroups": {} } \ No newline at end of file diff --git a/external/oauth-aspnet b/external/oauth-aspnet index 1fdf3cb7..0bc87b6a 160000 --- a/external/oauth-aspnet +++ b/external/oauth-aspnet @@ -1 +1 @@ -Subproject commit 1fdf3cb799188891aa0fcb924cb7888d6d1bd92d +Subproject commit 0bc87b6a66137ea16621a6bb8c63fe822fd9ac0c diff --git a/global.json b/global.json index 8d22797c..3e075f83 100644 --- a/global.json +++ b/global.json @@ -1,5 +1,5 @@ { - "projects": [ "Yavsc", "external/oauth-aspnet" ], + "projects": [ "Yavsc" ], "sdk": { "version": "1.0.0-rc1-update2", "runtime": "mono", diff --git a/testOauthClient/Controllers/AuthenticationController.cs b/testOauthClient/Controllers/AuthenticationController.cs index 51936e3e..ed65f72a 100644 --- a/testOauthClient/Controllers/AuthenticationController.cs +++ b/testOauthClient/Controllers/AuthenticationController.cs @@ -10,7 +10,7 @@ namespace Mvc.Client.Controllers { // Instruct the OIDC client middleware to redirect the user agent to the identity provider. // Note: the authenticationType parameter must match the value configured in Startup.cs var properties = new AuthenticationProperties { RedirectUri = "http://localhost:5002/signin-yavsc" }; - return new ChallengeResult("yavsc", properties); + return new ChallengeResult("Yavsc", properties); } } diff --git a/testOauthClient/Startup.cs b/testOauthClient/Startup.cs index ac2c31d8..b094ca0c 100755 --- a/testOauthClient/Startup.cs +++ b/testOauthClient/Startup.cs @@ -1,18 +1,12 @@ using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; using Microsoft.AspNet.Builder; using Microsoft.AspNet.Hosting; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; -using Microsoft.AspNet.Authentication.OpenIdConnect; using Microsoft.AspNet.Authentication; -using Microsoft.IdentityModel.Protocols.OpenIdConnect; using Microsoft.AspNet.Http; using Microsoft.AspNet.Authentication.Cookies; -using Yavsc.Auth; using Microsoft.Extensions.WebEncoders; namespace testOauthClient @@ -77,16 +71,15 @@ namespace testOauthClient app.UseOAuthAuthentication( options => {  - options.AuthenticationScheme = "yavsc"; - options.AuthorizationEndpoint="http://dev.pschneider.fr/authorize"; - options.TokenEndpoint="http://dev.pschneider.fr/token"; - options.AutomaticAuthenticate=true; - options.AutomaticChallenge=true; - options.CallbackPath=new PathString("/signin-yavsc"); - options.ClaimsIssuer="http://dev.pschneider.fr"; - options.ClientId="016c5ae4-f4cd-40e3-b250-13701c871ecd"; - options.ClientSecret="blahblah"; - options.SignInScheme="Bearer"; + options.AuthenticationScheme = "Yavsc"; + options.AuthorizationEndpoint = "http://dev.pschneider.fr/authorize"; + options.TokenEndpoint = "http://dev.pschneider.fr/token"; + options.CallbackPath = new PathString("/signin-yavsc"); + options.ClientId="21d8bd1b-4aed-4fcb-9ed9-00b43f6a8169"; + options.ClientSecret="blih"; + options.Scope.Add("profile"); + options.SaveTokensAsClaims = true; + options.UserInformationEndpoint = "http://dev.pschneider.fr/api/me"; } ); diff --git a/testOauthClient/YavscOAuthHandler.cs b/testOauthClient/YavscOAuthHandler.cs deleted file mode 100644 index 4d575f07..00000000 --- a/testOauthClient/YavscOAuthHandler.cs +++ /dev/null @@ -1,157 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Net.Http.Headers; -using System.Security.Claims; -using System.Threading.Tasks; -using Microsoft.AspNet.Authentication; -using Microsoft.AspNet.Authentication.OAuth; -using Microsoft.AspNet.Http; -using Microsoft.AspNet.Http.Authentication; -using Microsoft.AspNet.Http.Features.Authentication; -using Microsoft.AspNet.WebUtilities; -using Microsoft.Extensions.Logging; -using Newtonsoft.Json.Linq; - -namespace Yavsc.Auth -{ - internal class YavscOAuthHandler : OAuthHandler - { - private ILogger _logger; - HttpClient _backchannel; - private SharedAuthenticationOptions _sharedOptions; - public YavscOAuthHandler(HttpClient httpClient, SharedAuthenticationOptions sharedOptions, ILogger logger) - : base(httpClient) - { - _backchannel = httpClient; - _logger = logger; - _sharedOptions = sharedOptions; - } - // TODO: Abstract this properties override pattern into the base class? - protected override string BuildChallengeUrl(AuthenticationProperties properties, string redirectUri) - { - var scope = FormatScope(); - var queryStrings = new Dictionary(StringComparer.OrdinalIgnoreCase); - queryStrings.Add("response_type", "code"); - queryStrings.Add("client_id", Options.ClientId); - queryStrings.Add("redirect_uri", redirectUri); - - AddQueryString(queryStrings, properties, "scope", scope); - - AddQueryString(queryStrings, properties, "access_type", Options.AccessType ); - AddQueryString(queryStrings, properties, "approval_prompt"); - AddQueryString(queryStrings, properties, "login_hint"); - - var state = Options.StateDataFormat.Protect(properties); - queryStrings.Add("state", state); - - var authorizationEndpoint = QueryHelpers.AddQueryString(Options.AuthorizationEndpoint, queryStrings); - return authorizationEndpoint; - } - - private static void AddQueryString(IDictionary queryStrings, AuthenticationProperties properties, - string name, string defaultValue = null) - { - string value; - if (!properties.Items.TryGetValue(name, out value)) - { - value = defaultValue; - } - else - { - // Remove the parameter from AuthenticationProperties so it won't be serialized to state parameter - properties.Items.Remove(name); - } - queryStrings[name] = value; - } - protected new async Task AuthenticateAsync(AuthenticateContext context) - { - AuthenticationProperties properties = null; - - try - { - // ASP.Net Identity requires the NameIdentitifer field to be set or it won't - // accept the external login (AuthenticationManagerExtensions.GetExternalLoginInfo) - - string code = null; - string state = null; - - IReadableStringCollection query = Request.Query; - IList values = query["code"]; - if (values != null && values.Count == 1) - { - code = values[0]; - } - values = query["state"]; - if (values != null && values.Count == 1) - { - state = values[0]; - } - - properties = Options.StateDataFormat.Unprotect(state); - if (properties == null) - { - return null; - } - - // OAuth2 10.12 CSRF - if (!ValidateCorrelationId(properties)) - { - return new AuthenticationTicket(null, properties, this.Options.AuthenticationScheme); - } - - string requestPrefix = Request.Scheme + "://" + Request.Host; - string redirectUri = requestPrefix + Request.PathBase + Options.CallbackPath; - - // Build up the body for the token request - var body = new List>(); - body.Add(new KeyValuePair("grant_type", "authorization_code")); - body.Add(new KeyValuePair("code", code)); - body.Add(new KeyValuePair("redirect_uri", redirectUri)); - body.Add(new KeyValuePair("client_id", Options.ClientId)); - body.Add(new KeyValuePair("client_secret", Options.ClientSecret)); - - // Request the token - HttpResponseMessage tokenResponse = - await _backchannel.PostAsync(Options.TokenEndpoint, new FormUrlEncodedContent(body)); - tokenResponse.EnsureSuccessStatusCode(); - string text = await tokenResponse.Content.ReadAsStringAsync(); - - // Deserializes the token response - JObject response = JObject.Parse(text); - string accessToken = response.Value("access_token"); - - if (string.IsNullOrWhiteSpace(accessToken)) - { - _logger.LogWarning("Access token was not found"); - return new AuthenticationTicket(null, properties, this.Options.AuthenticationScheme); - } - - // Get the user - HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, Options.UserInformationEndpoint); - request.Headers.Authorization = new AuthenticationHeaderValue(this.Options.AuthenticationScheme, accessToken); - HttpResponseMessage graphResponse = await _backchannel.SendAsync(request); - graphResponse.EnsureSuccessStatusCode(); - text = await graphResponse.Content.ReadAsStringAsync(); - JObject user = JObject.Parse(text); - // Read user data - - var id = new ClaimsIdentity( - _sharedOptions.SignInScheme, - ClaimsIdentity.DefaultNameClaimType, - ClaimsIdentity.DefaultRoleClaimType); - context.Authenticated(new ClaimsPrincipal(id) - , new Dictionary(), new Dictionary{ - { "John" , (object) "Doe" } - }); - return new AuthenticationTicket(context.Principal, properties, _sharedOptions.SignInScheme); - } - catch (Exception ex) - { - _logger.LogError("Authentication failed", ex); - return new AuthenticationTicket(null, properties, this.Options.AuthenticationScheme); - } - - } - } -} diff --git a/testOauthClient/YavscOAuthMiddleware.cs b/testOauthClient/YavscOAuthMiddleware.cs deleted file mode 100644 index 7776998c..00000000 --- a/testOauthClient/YavscOAuthMiddleware.cs +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using Microsoft.AspNet.Authentication; -using Microsoft.AspNet.Authentication.OAuth; -using Microsoft.AspNet.Builder; -using Microsoft.AspNet.DataProtection; -using Microsoft.Extensions.Logging; -using Microsoft.Extensions.OptionsModel; -using Microsoft.Extensions.WebEncoders; -namespace Yavsc.Auth -{ - /// - /// An ASP.NET Core middleware for authenticating users using Google OAuth 2.0. - /// - public class YavscOAuthMiddleware : OAuthMiddleware - { - private RequestDelegate _next; - private ILogger _logger; - private SharedAuthenticationOptions _sharedOptions; - - /// - /// Initializes a new . - /// - /// The next middleware in the HTTP pipeline to invoke. - /// - /// - /// - /// - /// Configuration options for the middleware. - public YavscOAuthMiddleware( - RequestDelegate next, - IDataProtectionProvider dataProtectionProvider, - ILoggerFactory loggerFactory, - UrlEncoder encoder, - IOptions sharedOptions, - YavscOAuthOptions options) - : base(next, dataProtectionProvider, loggerFactory, encoder, sharedOptions, options) - { - if (next == null) - { - throw new ArgumentNullException(nameof(next)); - } - _next = next; - - if (dataProtectionProvider == null) - { - throw new ArgumentNullException(nameof(dataProtectionProvider)); - } - - if (loggerFactory == null) - { - throw new ArgumentNullException(nameof(loggerFactory)); - } - _logger = loggerFactory.CreateLogger(); - - if (encoder == null) - { - throw new ArgumentNullException(nameof(encoder)); - } - - if (sharedOptions == null) - { - throw new ArgumentNullException(nameof(sharedOptions)); - } - _sharedOptions = sharedOptions.Value; - - if (options == null) - { - throw new ArgumentNullException(nameof(options)); - } - } - - protected override AuthenticationHandler CreateHandler() - { - return new YavscOAuthHandler(Backchannel,_sharedOptions,_logger); - } - } -} diff --git a/testOauthClient/YavscOAuthOptions.cs b/testOauthClient/YavscOAuthOptions.cs deleted file mode 100644 index 6290db6a..00000000 --- a/testOauthClient/YavscOAuthOptions.cs +++ /dev/null @@ -1,24 +0,0 @@ - - -using Microsoft.AspNet.Authentication.OAuth; -using Microsoft.AspNet.Http; - -public class YavscOAuthOptions : OAuthOptions { - public YavscOAuthOptions() - { - AuthenticationScheme = "yavsc"; - DisplayName = AuthenticationScheme; - CallbackPath = new PathString("/signin-yavsc"); - AuthorizationEndpoint = "http://dev.pschneider.fr/connect/authorize"; - TokenEndpoint = "http://dev.pschneider.fr/api/token/get"; - UserInformationEndpoint = "http://dev.pschneider.fr/api/userinfo"; - Scope.Add("openid"); - Scope.Add("profile"); - Scope.Add("email"); - } - - /// - /// access_type. Set to 'offline' to request a refresh token. - /// - public string AccessType { get; set; } -} \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/bootstrap/.bower.json b/testOauthClient/wwwroot/lib/bootstrap/.bower.json new file mode 100644 index 00000000..b8d11ac9 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/.bower.json @@ -0,0 +1,44 @@ +{ + "name": "bootstrap", + "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", + "keywords": [ + "css", + "js", + "less", + "mobile-first", + "responsive", + "front-end", + "framework", + "web" + ], + "homepage": "http://getbootstrap.com", + "license": "MIT", + "moduleType": "globals", + "main": [ + "less/bootstrap.less", + "dist/js/bootstrap.js" + ], + "ignore": [ + "/.*", + "_config.yml", + "CNAME", + "composer.json", + "CONTRIBUTING.md", + "docs", + "js/tests", + "test-infra" + ], + "dependencies": { + "jquery": ">= 1.9.1" + }, + "version": "3.3.5", + "_release": "3.3.5", + "_resolution": { + "type": "version", + "tag": "v3.3.5", + "commit": "16b48259a62f576e52c903c476bd42b90ab22482" + }, + "_source": "https://github.com/twbs/bootstrap.git", + "_target": "3.3.5", + "_originalSource": "bootstrap" +} \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/bootstrap/Gruntfile.js b/testOauthClient/wwwroot/lib/bootstrap/Gruntfile.js new file mode 100644 index 00000000..4c021cef --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/Gruntfile.js @@ -0,0 +1,531 @@ +/*! + * Bootstrap's Gruntfile + * http://getbootstrap.com + * Copyright 2013-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +module.exports = function (grunt) { + 'use strict'; + + // Force use of Unix newlines + grunt.util.linefeed = '\n'; + + RegExp.quote = function (string) { + return string.replace(/[-\\^$*+?.()|[\]{}]/g, '\\$&'); + }; + + var fs = require('fs'); + var path = require('path'); + var npmShrinkwrap = require('npm-shrinkwrap'); + var generateGlyphiconsData = require('./grunt/bs-glyphicons-data-generator.js'); + var BsLessdocParser = require('./grunt/bs-lessdoc-parser.js'); + var getLessVarsData = function () { + var filePath = path.join(__dirname, 'less/variables.less'); + var fileContent = fs.readFileSync(filePath, { encoding: 'utf8' }); + var parser = new BsLessdocParser(fileContent); + return { sections: parser.parseFile() }; + }; + var generateRawFiles = require('./grunt/bs-raw-files-generator.js'); + var generateCommonJSModule = require('./grunt/bs-commonjs-generator.js'); + var configBridge = grunt.file.readJSON('./grunt/configBridge.json', { encoding: 'utf8' }); + + Object.keys(configBridge.paths).forEach(function (key) { + configBridge.paths[key].forEach(function (val, i, arr) { + arr[i] = path.join('./docs/assets', val); + }); + }); + + // Project configuration. + grunt.initConfig({ + + // Metadata. + pkg: grunt.file.readJSON('package.json'), + banner: '/*!\n' + + ' * Bootstrap v<%= pkg.version %> (<%= pkg.homepage %>)\n' + + ' * Copyright 2011-<%= grunt.template.today("yyyy") %> <%= pkg.author %>\n' + + ' * Licensed under the <%= pkg.license %> license\n' + + ' */\n', + jqueryCheck: configBridge.config.jqueryCheck.join('\n'), + jqueryVersionCheck: configBridge.config.jqueryVersionCheck.join('\n'), + + // Task configuration. + clean: { + dist: 'dist', + docs: 'docs/dist' + }, + + jshint: { + options: { + jshintrc: 'js/.jshintrc' + }, + grunt: { + options: { + jshintrc: 'grunt/.jshintrc' + }, + src: ['Gruntfile.js', 'package.js', 'grunt/*.js'] + }, + core: { + src: 'js/*.js' + }, + test: { + options: { + jshintrc: 'js/tests/unit/.jshintrc' + }, + src: 'js/tests/unit/*.js' + }, + assets: { + src: ['docs/assets/js/src/*.js', 'docs/assets/js/*.js', '!docs/assets/js/*.min.js'] + } + }, + + jscs: { + options: { + config: 'js/.jscsrc' + }, + grunt: { + src: '<%= jshint.grunt.src %>' + }, + core: { + src: '<%= jshint.core.src %>' + }, + test: { + src: '<%= jshint.test.src %>' + }, + assets: { + options: { + requireCamelCaseOrUpperCaseIdentifiers: null + }, + src: '<%= jshint.assets.src %>' + } + }, + + concat: { + options: { + banner: '<%= banner %>\n<%= jqueryCheck %>\n<%= jqueryVersionCheck %>', + stripBanners: false + }, + bootstrap: { + src: [ + 'js/transition.js', + 'js/alert.js', + 'js/button.js', + 'js/carousel.js', + 'js/collapse.js', + 'js/dropdown.js', + 'js/modal.js', + 'js/tooltip.js', + 'js/popover.js', + 'js/scrollspy.js', + 'js/tab.js', + 'js/affix.js' + ], + dest: 'dist/js/<%= pkg.name %>.js' + } + }, + + uglify: { + options: { + compress: { + warnings: false + }, + mangle: true, + preserveComments: 'some' + }, + core: { + src: '<%= concat.bootstrap.dest %>', + dest: 'dist/js/<%= pkg.name %>.min.js' + }, + customize: { + src: configBridge.paths.customizerJs, + dest: 'docs/assets/js/customize.min.js' + }, + docsJs: { + src: configBridge.paths.docsJs, + dest: 'docs/assets/js/docs.min.js' + } + }, + + qunit: { + options: { + inject: 'js/tests/unit/phantom.js' + }, + files: 'js/tests/index.html' + }, + + less: { + compileCore: { + options: { + strictMath: true, + sourceMap: true, + outputSourceFiles: true, + sourceMapURL: '<%= pkg.name %>.css.map', + sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map' + }, + src: 'less/bootstrap.less', + dest: 'dist/css/<%= pkg.name %>.css' + }, + compileTheme: { + options: { + strictMath: true, + sourceMap: true, + outputSourceFiles: true, + sourceMapURL: '<%= pkg.name %>-theme.css.map', + sourceMapFilename: 'dist/css/<%= pkg.name %>-theme.css.map' + }, + src: 'less/theme.less', + dest: 'dist/css/<%= pkg.name %>-theme.css' + } + }, + + autoprefixer: { + options: { + browsers: configBridge.config.autoprefixerBrowsers + }, + core: { + options: { + map: true + }, + src: 'dist/css/<%= pkg.name %>.css' + }, + theme: { + options: { + map: true + }, + src: 'dist/css/<%= pkg.name %>-theme.css' + }, + docs: { + src: ['docs/assets/css/src/docs.css'] + }, + examples: { + expand: true, + cwd: 'docs/examples/', + src: ['**/*.css'], + dest: 'docs/examples/' + } + }, + + csslint: { + options: { + csslintrc: 'less/.csslintrc' + }, + dist: [ + 'dist/css/bootstrap.css', + 'dist/css/bootstrap-theme.css' + ], + examples: [ + 'docs/examples/**/*.css' + ], + docs: { + options: { + ids: false, + 'overqualified-elements': false + }, + src: 'docs/assets/css/src/docs.css' + } + }, + + cssmin: { + options: { + // TODO: disable `zeroUnits` optimization once clean-css 3.2 is released + // and then simplify the fix for https://github.com/twbs/bootstrap/issues/14837 accordingly + compatibility: 'ie8', + keepSpecialComments: '*', + advanced: false + }, + minifyCore: { + src: 'dist/css/<%= pkg.name %>.css', + dest: 'dist/css/<%= pkg.name %>.min.css' + }, + minifyTheme: { + src: 'dist/css/<%= pkg.name %>-theme.css', + dest: 'dist/css/<%= pkg.name %>-theme.min.css' + }, + docs: { + src: [ + 'docs/assets/css/src/pygments-manni.css', + 'docs/assets/css/src/docs.css' + ], + dest: 'docs/assets/css/docs.min.css' + } + }, + + csscomb: { + options: { + config: 'less/.csscomb.json' + }, + dist: { + expand: true, + cwd: 'dist/css/', + src: ['*.css', '!*.min.css'], + dest: 'dist/css/' + }, + examples: { + expand: true, + cwd: 'docs/examples/', + src: '**/*.css', + dest: 'docs/examples/' + }, + docs: { + src: 'docs/assets/css/src/docs.css', + dest: 'docs/assets/css/src/docs.css' + } + }, + + copy: { + fonts: { + expand: true, + src: 'fonts/*', + dest: 'dist/' + }, + docs: { + expand: true, + cwd: 'dist/', + src: [ + '**/*' + ], + dest: 'docs/dist/' + } + }, + + connect: { + server: { + options: { + port: 3000, + base: '.' + } + } + }, + + jekyll: { + options: { + config: '_config.yml' + }, + docs: {}, + github: { + options: { + raw: 'github: true' + } + } + }, + + htmlmin: { + dist: { + options: { + collapseWhitespace: true, + conservativeCollapse: true, + minifyCSS: true, + minifyJS: true, + removeAttributeQuotes: true, + removeComments: true + }, + expand: true, + cwd: '_gh_pages', + dest: '_gh_pages', + src: [ + '**/*.html', + '!examples/**/*.html' + ] + } + }, + + jade: { + options: { + pretty: true, + data: getLessVarsData + }, + customizerVars: { + src: 'docs/_jade/customizer-variables.jade', + dest: 'docs/_includes/customizer-variables.html' + }, + customizerNav: { + src: 'docs/_jade/customizer-nav.jade', + dest: 'docs/_includes/nav/customize.html' + } + }, + + htmllint: { + options: { + ignore: [ + 'Attribute "autocomplete" not allowed on element "button" at this point.', + 'Attribute "autocomplete" not allowed on element "input" at this point.', + 'Element "img" is missing required attribute "src".' + ] + }, + src: '_gh_pages/**/*.html' + }, + + watch: { + src: { + files: '<%= jshint.core.src %>', + tasks: ['jshint:core', 'qunit', 'concat'] + }, + test: { + files: '<%= jshint.test.src %>', + tasks: ['jshint:test', 'qunit'] + }, + less: { + files: 'less/**/*.less', + tasks: 'less' + } + }, + + sed: { + versionNumber: { + pattern: (function () { + var old = grunt.option('oldver'); + return old ? RegExp.quote(old) : old; + })(), + replacement: grunt.option('newver'), + exclude: [ + 'dist/fonts', + 'docs/assets', + 'fonts', + 'js/tests/vendor', + 'node_modules', + 'test-infra' + ], + recursive: true + } + }, + + 'saucelabs-qunit': { + all: { + options: { + build: process.env.TRAVIS_JOB_ID, + throttled: 10, + maxRetries: 3, + maxPollRetries: 4, + urls: ['http://127.0.0.1:3000/js/tests/index.html?hidepassed'], + browsers: grunt.file.readYAML('grunt/sauce_browsers.yml') + } + } + }, + + exec: { + npmUpdate: { + command: 'npm update' + } + }, + + compress: { + main: { + options: { + archive: 'bootstrap-<%= pkg.version %>-dist.zip', + mode: 'zip', + level: 9, + pretty: true + }, + files: [ + { + expand: true, + cwd: 'dist/', + src: ['**'], + dest: 'bootstrap-<%= pkg.version %>-dist' + } + ] + } + } + + }); + + + // These plugins provide necessary tasks. + require('load-grunt-tasks')(grunt, { scope: 'devDependencies' }); + require('time-grunt')(grunt); + + // Docs HTML validation task + grunt.registerTask('validate-html', ['jekyll:docs', 'htmllint']); + + var runSubset = function (subset) { + return !process.env.TWBS_TEST || process.env.TWBS_TEST === subset; + }; + var isUndefOrNonZero = function (val) { + return val === undefined || val !== '0'; + }; + + // Test task. + var testSubtasks = []; + // Skip core tests if running a different subset of the test suite + if (runSubset('core') && + // Skip core tests if this is a Savage build + process.env.TRAVIS_REPO_SLUG !== 'twbs-savage/bootstrap') { + testSubtasks = testSubtasks.concat(['dist-css', 'dist-js', 'csslint:dist', 'test-js', 'docs']); + } + // Skip HTML validation if running a different subset of the test suite + if (runSubset('validate-html') && + // Skip HTML5 validator on Travis when [skip validator] is in the commit message + isUndefOrNonZero(process.env.TWBS_DO_VALIDATOR)) { + testSubtasks.push('validate-html'); + } + // Only run Sauce Labs tests if there's a Sauce access key + if (typeof process.env.SAUCE_ACCESS_KEY !== 'undefined' && + // Skip Sauce if running a different subset of the test suite + runSubset('sauce-js-unit') && + // Skip Sauce on Travis when [skip sauce] is in the commit message + isUndefOrNonZero(process.env.TWBS_DO_SAUCE)) { + testSubtasks.push('connect'); + testSubtasks.push('saucelabs-qunit'); + } + grunt.registerTask('test', testSubtasks); + grunt.registerTask('test-js', ['jshint:core', 'jshint:test', 'jshint:grunt', 'jscs:core', 'jscs:test', 'jscs:grunt', 'qunit']); + + // JS distribution task. + grunt.registerTask('dist-js', ['concat', 'uglify:core', 'commonjs']); + + // CSS distribution task. + grunt.registerTask('less-compile', ['less:compileCore', 'less:compileTheme']); + grunt.registerTask('dist-css', ['less-compile', 'autoprefixer:core', 'autoprefixer:theme', 'csscomb:dist', 'cssmin:minifyCore', 'cssmin:minifyTheme']); + + // Full distribution task. + grunt.registerTask('dist', ['clean:dist', 'dist-css', 'copy:fonts', 'dist-js']); + + // Default task. + grunt.registerTask('default', ['clean:dist', 'copy:fonts', 'test']); + + // Version numbering task. + // grunt change-version-number --oldver=A.B.C --newver=X.Y.Z + // This can be overzealous, so its changes should always be manually reviewed! + grunt.registerTask('change-version-number', 'sed'); + + grunt.registerTask('build-glyphicons-data', function () { generateGlyphiconsData.call(this, grunt); }); + + // task for building customizer + grunt.registerTask('build-customizer', ['build-customizer-html', 'build-raw-files']); + grunt.registerTask('build-customizer-html', 'jade'); + grunt.registerTask('build-raw-files', 'Add scripts/less files to customizer.', function () { + var banner = grunt.template.process('<%= banner %>'); + generateRawFiles(grunt, banner); + }); + + grunt.registerTask('commonjs', 'Generate CommonJS entrypoint module in dist dir.', function () { + var srcFiles = grunt.config.get('concat.bootstrap.src'); + var destFilepath = 'dist/js/npm.js'; + generateCommonJSModule(grunt, srcFiles, destFilepath); + }); + + // Docs task. + grunt.registerTask('docs-css', ['autoprefixer:docs', 'autoprefixer:examples', 'csscomb:docs', 'csscomb:examples', 'cssmin:docs']); + grunt.registerTask('lint-docs-css', ['csslint:docs', 'csslint:examples']); + grunt.registerTask('docs-js', ['uglify:docsJs', 'uglify:customize']); + grunt.registerTask('lint-docs-js', ['jshint:assets', 'jscs:assets']); + grunt.registerTask('docs', ['docs-css', 'lint-docs-css', 'docs-js', 'lint-docs-js', 'clean:docs', 'copy:docs', 'build-glyphicons-data', 'build-customizer']); + + grunt.registerTask('prep-release', ['dist', 'docs', 'jekyll:github', 'htmlmin', 'compress']); + + // Task for updating the cached npm packages used by the Travis build (which are controlled by test-infra/npm-shrinkwrap.json). + // This task should be run and the updated file should be committed whenever Bootstrap's dependencies change. + grunt.registerTask('update-shrinkwrap', ['exec:npmUpdate', '_update-shrinkwrap']); + grunt.registerTask('_update-shrinkwrap', function () { + var done = this.async(); + npmShrinkwrap({ dev: true, dirname: __dirname }, function (err) { + if (err) { + grunt.fail.warn(err); + } + var dest = 'test-infra/npm-shrinkwrap.json'; + fs.renameSync('npm-shrinkwrap.json', dest); + grunt.log.writeln('File ' + dest.cyan + ' updated.'); + done(); + }); + }); +}; diff --git a/testOauthClient/wwwroot/lib/bootstrap/LICENSE b/testOauthClient/wwwroot/lib/bootstrap/LICENSE new file mode 100644 index 00000000..f4c52d6a --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2011-2015 Twitter, Inc + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/testOauthClient/wwwroot/lib/bootstrap/README.md b/testOauthClient/wwwroot/lib/bootstrap/README.md new file mode 100644 index 00000000..34c8b5a5 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/README.md @@ -0,0 +1,137 @@ +# [Bootstrap](http://getbootstrap.com) +[![Slack](https://bootstrap-slack.herokuapp.com/badge.svg)](https://bootstrap-slack.herokuapp.com) +![Bower version](https://img.shields.io/bower/v/bootstrap.svg) +[![npm version](https://img.shields.io/npm/v/bootstrap.svg)](https://www.npmjs.com/package/bootstrap) +[![Build Status](https://img.shields.io/travis/twbs/bootstrap/master.svg)](https://travis-ci.org/twbs/bootstrap) +[![devDependency Status](https://img.shields.io/david/dev/twbs/bootstrap.svg)](https://david-dm.org/twbs/bootstrap#info=devDependencies) +[![Selenium Test Status](https://saucelabs.com/browser-matrix/bootstrap.svg)](https://saucelabs.com/u/bootstrap) + +Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](https://twitter.com/mdo) and [Jacob Thornton](https://twitter.com/fat), and maintained by the [core team](https://github.com/orgs/twbs/people) with the massive support and involvement of the community. + +To get started, check out ! + +## Table of contents + +- [Quick start](#quick-start) +- [Bugs and feature requests](#bugs-and-feature-requests) +- [Documentation](#documentation) +- [Contributing](#contributing) +- [Community](#community) +- [Versioning](#versioning) +- [Creators](#creators) +- [Copyright and license](#copyright-and-license) + +## Quick start + +Several quick start options are available: + +- [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.3.5.zip). +- Clone the repo: `git clone https://github.com/twbs/bootstrap.git`. +- Install with [Bower](http://bower.io): `bower install bootstrap`. +- Install with [npm](https://www.npmjs.com): `npm install bootstrap`. +- Install with [Meteor](https://www.meteor.com): `meteor add twbs:bootstrap`. +- Install with [Composer](https://getcomposer.org): `composer require twbs/bootstrap`. + +Read the [Getting started page](http://getbootstrap.com/getting-started/) for information on the framework contents, templates and examples, and more. + +### What's included + +Within the download you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations. You'll see something like this: + +``` +bootstrap/ +├── css/ +│ ├── bootstrap.css +│ ├── bootstrap.css.map +│ ├── bootstrap.min.css +│ ├── bootstrap-theme.css +│ ├── bootstrap-theme.css.map +│ └── bootstrap-theme.min.css +├── js/ +│ ├── bootstrap.js +│ └── bootstrap.min.js +└── fonts/ + ├── glyphicons-halflings-regular.eot + ├── glyphicons-halflings-regular.svg + ├── glyphicons-halflings-regular.ttf + ├── glyphicons-halflings-regular.woff + └── glyphicons-halflings-regular.woff2 +``` + +We provide compiled CSS and JS (`bootstrap.*`), as well as compiled and minified CSS and JS (`bootstrap.min.*`). CSS [source maps](https://developer.chrome.com/devtools/docs/css-preprocessors) (`bootstrap.*.map`) are available for use with certain browsers' developer tools. Fonts from Glyphicons are included, as is the optional Bootstrap theme. + + + +## Bugs and feature requests + +Have a bug or a feature request? Please first read the [issue guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#using-the-issue-tracker) and search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/twbs/bootstrap/issues/new). + + +## Documentation + +Bootstrap's documentation, included in this repo in the root directory, is built with [Jekyll](http://jekyllrb.com) and publicly hosted on GitHub Pages at . The docs may also be run locally. + +### Running documentation locally + +1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v2.5.x). + - **Windows users:** Read [this unofficial guide](http://jekyll-windows.juthilo.com/) to get Jekyll up and running without problems. +2. Install the Ruby-based syntax highlighter, [Rouge](https://github.com/jneen/rouge), with `gem install rouge`. +3. From the root `/bootstrap` directory, run `jekyll serve` in the command line. +4. Open in your browser, and voilà. + +Learn more about using Jekyll by reading its [documentation](http://jekyllrb.com/docs/home/). + +### Documentation for previous releases + +Documentation for v2.3.2 has been made available for the time being at while folks transition to Bootstrap 3. + +[Previous releases](https://github.com/twbs/bootstrap/releases) and their documentation are also available for download. + + + +## Contributing + +Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development. + +Moreover, if your pull request contains JavaScript patches or features, you must include [relevant unit tests](https://github.com/twbs/bootstrap/tree/master/js/tests). All HTML and CSS should conform to the [Code Guide](https://github.com/mdo/code-guide), maintained by [Mark Otto](https://github.com/mdo). + +Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at . + + + +## Community + +Get updates on Bootstrap's development and chat with the project maintainers and community members. + +- Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap). +- Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.com). +- Join [the official Slack room](https://bootstrap-slack.herokuapp.com). +- Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel. +- Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](https://stackoverflow.com/questions/tagged/twitter-bootstrap-3)). +- Developers should use the keyword `bootstrap` on packages which modify or add to the functionality of Bootstrap when distributing through [npm](https://www.npmjs.com/browse/keyword/bootstrap) or similar delivery mechanisms for maximum discoverability. + + + +## Versioning + +For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under [the Semantic Versioning guidelines](http://semver.org/). Sometimes we screw up, but we'll adhere to those rules whenever possible. + + + +## Creators + +**Mark Otto** + +- +- + +**Jacob Thornton** + +- +- + + + +## Copyright and license + +Code and documentation copyright 2011-2015 Twitter, Inc. Code released under [the MIT license](https://github.com/twbs/bootstrap/blob/master/LICENSE). Docs released under [Creative Commons](https://github.com/twbs/bootstrap/blob/master/docs/LICENSE). diff --git a/testOauthClient/wwwroot/lib/bootstrap/bower.json b/testOauthClient/wwwroot/lib/bootstrap/bower.json new file mode 100644 index 00000000..686bcf1a --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/bower.json @@ -0,0 +1,34 @@ +{ + "name": "bootstrap", + "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", + "keywords": [ + "css", + "js", + "less", + "mobile-first", + "responsive", + "front-end", + "framework", + "web" + ], + "homepage": "http://getbootstrap.com", + "license": "MIT", + "moduleType": "globals", + "main": [ + "less/bootstrap.less", + "dist/js/bootstrap.js" + ], + "ignore": [ + "/.*", + "_config.yml", + "CNAME", + "composer.json", + "CONTRIBUTING.md", + "docs", + "js/tests", + "test-infra" + ], + "dependencies": { + "jquery": ">= 1.9.1" + } +} diff --git a/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css new file mode 100644 index 00000000..c19cd5c4 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css @@ -0,0 +1,587 @@ +/*! + * Bootstrap v3.3.5 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +.btn-default, +.btn-primary, +.btn-success, +.btn-info, +.btn-warning, +.btn-danger { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); +} +.btn-default:active, +.btn-primary:active, +.btn-success:active, +.btn-info:active, +.btn-warning:active, +.btn-danger:active, +.btn-default.active, +.btn-primary.active, +.btn-success.active, +.btn-info.active, +.btn-warning.active, +.btn-danger.active { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-default.disabled, +.btn-primary.disabled, +.btn-success.disabled, +.btn-info.disabled, +.btn-warning.disabled, +.btn-danger.disabled, +.btn-default[disabled], +.btn-primary[disabled], +.btn-success[disabled], +.btn-info[disabled], +.btn-warning[disabled], +.btn-danger[disabled], +fieldset[disabled] .btn-default, +fieldset[disabled] .btn-primary, +fieldset[disabled] .btn-success, +fieldset[disabled] .btn-info, +fieldset[disabled] .btn-warning, +fieldset[disabled] .btn-danger { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-default .badge, +.btn-primary .badge, +.btn-success .badge, +.btn-info .badge, +.btn-warning .badge, +.btn-danger .badge { + text-shadow: none; +} +.btn:active, +.btn.active { + background-image: none; +} +.btn-default { + text-shadow: 0 1px 0 #fff; + background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); + background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #dbdbdb; + border-color: #ccc; +} +.btn-default:hover, +.btn-default:focus { + background-color: #e0e0e0; + background-position: 0 -15px; +} +.btn-default:active, +.btn-default.active { + background-color: #e0e0e0; + border-color: #dbdbdb; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #e0e0e0; + background-image: none; +} +.btn-primary { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); + background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #245580; +} +.btn-primary:hover, +.btn-primary:focus { + background-color: #265a88; + background-position: 0 -15px; +} +.btn-primary:active, +.btn-primary.active { + background-color: #265a88; + border-color: #245580; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #265a88; + background-image: none; +} +.btn-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #3e8f3e; +} +.btn-success:hover, +.btn-success:focus { + background-color: #419641; + background-position: 0 -15px; +} +.btn-success:active, +.btn-success.active { + background-color: #419641; + border-color: #3e8f3e; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #419641; + background-image: none; +} +.btn-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #28a4c9; +} +.btn-info:hover, +.btn-info:focus { + background-color: #2aabd2; + background-position: 0 -15px; +} +.btn-info:active, +.btn-info.active { + background-color: #2aabd2; + border-color: #28a4c9; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #2aabd2; + background-image: none; +} +.btn-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #e38d13; +} +.btn-warning:hover, +.btn-warning:focus { + background-color: #eb9316; + background-position: 0 -15px; +} +.btn-warning:active, +.btn-warning.active { + background-color: #eb9316; + border-color: #e38d13; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #eb9316; + background-image: none; +} +.btn-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #b92c28; +} +.btn-danger:hover, +.btn-danger:focus { + background-color: #c12e2a; + background-position: 0 -15px; +} +.btn-danger:active, +.btn-danger.active { + background-color: #c12e2a; + border-color: #b92c28; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #c12e2a; + background-image: none; +} +.thumbnail, +.img-thumbnail { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + background-color: #e8e8e8; + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + background-color: #2e6da4; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.navbar-default { + background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); + background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); +} +.navbar-brand, +.navbar-nav > li > a { + text-shadow: 0 1px 0 rgba(255, 255, 255, .25); +} +.navbar-inverse { + background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); + background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); + background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); +} +.navbar-inverse .navbar-brand, +.navbar-inverse .navbar-nav > li > a { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); +} +.navbar-static-top, +.navbar-fixed-top, +.navbar-fixed-bottom { + border-radius: 0; +} +@media (max-width: 767px) { + .navbar .navbar-nav .open .dropdown-menu > .active > a, + .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; + } +} +.alert { + text-shadow: 0 1px 0 rgba(255, 255, 255, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); +} +.alert-success { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); + background-repeat: repeat-x; + border-color: #b2dba1; +} +.alert-info { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); + background-repeat: repeat-x; + border-color: #9acfea; +} +.alert-warning { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); + background-repeat: repeat-x; + border-color: #f5e79e; +} +.alert-danger { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); + background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); + background-repeat: repeat-x; + border-color: #dca7a7; +} +.progress { + background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); + background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.list-group { + border-radius: 4px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + text-shadow: 0 -1px 0 #286090; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); + background-repeat: repeat-x; + border-color: #2b669a; +} +.list-group-item.active .badge, +.list-group-item.active:hover .badge, +.list-group-item.active:focus .badge { + text-shadow: none; +} +.panel { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: 0 1px 2px rgba(0, 0, 0, .05); +} +.panel-default > .panel-heading { + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.panel-primary > .panel-heading { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.panel-success > .panel-heading { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); + background-repeat: repeat-x; +} +.panel-info > .panel-heading { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); + background-repeat: repeat-x; +} +.panel-warning > .panel-heading { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); + background-repeat: repeat-x; +} +.panel-danger > .panel-heading { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); + background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); + background-repeat: repeat-x; +} +.well { + background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; + border-color: #dcdcdc; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); +} +/*# sourceMappingURL=bootstrap-theme.css.map */ diff --git a/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map new file mode 100644 index 00000000..75353114 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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","file":"bootstrap-theme.css","sourcesContent":["/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222222 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They will be removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility){\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css new file mode 100644 index 00000000..61358b13 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css @@ -0,0 +1,5 @@ +/*! + * Bootstrap v3.3.5 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap.css b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap.css new file mode 100644 index 00000000..680e7687 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap.css @@ -0,0 +1,6800 @@ +/*! + * Bootstrap v3.3.5 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + margin: .67em 0; + font-size: 2em; +} +mark { + color: #000; + background: #ff0; +} +small { + font-size: 80%; +} +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +sup { + top: -.5em; +} +sub { + bottom: -.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + height: 0; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + margin: 0; + font: inherit; + color: inherit; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + padding: .35em .625em .75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} +legend { + padding: 0; + border: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-spacing: 0; + border-collapse: collapse; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\2a"; +} +.glyphicon-plus:before { + content: "\2b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + display: inline-block; + max-width: 100%; + height: auto; + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + padding: .2em; + background-color: #fcf8e3; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover, +a.text-primary:focus { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover, +a.text-success:focus { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover, +a.text-info:focus { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover, +a.text-warning:focus { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover, +a.text-danger:focus { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + margin-left: -5px; + list-style: none; +} +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + text-align: right; + border-right: 5px solid #eee; + border-left: 0; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +.row { + margin-right: -15px; + margin-left: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #ddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #ddd; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f9f9f9; +} +.table-hover > tbody > tr:hover { + background-color: #f5f5f5; +} +table col[class*="col-"] { + position: static; + display: table-column; + float: none; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + display: table-cell; + float: none; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + min-height: .01%; + overflow-x: auto; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.42857143; + color: #555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 34px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-top: 4px \9; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + min-height: 34px; + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-right: 0; + padding-left: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 46px; + line-height: 46px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 11px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + background-color: #dff0d8; + border-color: #3c763d; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #8a6d3b; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + background-color: #f2dede; + border-color: #a94442; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 7px; + margin-bottom: 0; + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 14.333333px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; + opacity: .65; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #fff; + border-color: #ccc; +} +.btn-default .badge { + color: #fff; + background-color: #333; +} +.btn-primary { + color: #fff; + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:focus, +.btn-primary.focus { + color: #fff; + background-color: #286090; + border-color: #122b40; +} +.btn-primary:hover { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #fff; + background-color: #204d74; + border-color: #122b40; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary .badge { + color: #337ab7; + background-color: #fff; +} +.btn-success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:focus, +.btn-success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success .badge { + color: #5cb85c; + background-color: #fff; +} +.btn-info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:focus, +.btn-info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info .badge { + color: #5bc0de; + background-color: #fff; +} +.btn-warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:focus, +.btn-warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.btn-danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:focus, +.btn-danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + font-weight: normal; + color: #337ab7; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + -o-transition: opacity .15s linear; + transition: opacity .15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); + box-shadow: 0 6px 12px rgba(0, 0, 0, .175); +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + background-color: #337ab7; + outline: 0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + right: 0; + left: auto; +} +.dropdown-menu-left { + right: auto; + left: 0; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + content: ""; + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } + .navbar-right .dropdown-menu-left { + right: auto; + left: 0; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn, +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + display: table-cell; + float: none; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-right: 0; + padding-left: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555; + text-align: center; + background-color: #eee; + border: 1px solid #ccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px; +} +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eee; +} +.nav > li.disabled > a { + color: #777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #ddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eee #eee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555; + cursor: default; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #fff; + background-color: #337ab7; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + -webkit-overflow-scrolling: touch; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-right: 0; + padding-left: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + height: 50px; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-right: 15px; + margin-left: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.navbar-default .navbar-brand { + color: #777; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #777; +} +.navbar-default .navbar-nav > li > a { + color: #777; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #ddd; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #888; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e7e7e7; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555; + background-color: #e7e7e7; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #ccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #777; +} +.navbar-default .navbar-link:hover { + color: #333; +} +.navbar-default .btn-link { + color: #777; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #fff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #fff; + background-color: #080808; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #9d9d9d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #9d9d9d; +} +.navbar-inverse .navbar-link:hover { + color: #fff; +} +.navbar-inverse .btn-link { + color: #9d9d9d; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + padding: 0 5px; + color: #ccc; + content: "/\00a0"; +} +.breadcrumb > .active { + color: #777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #337ab7; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 3; + color: #23527c; + background-color: #eee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 2; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777; + cursor: not-allowed; + background-color: #fff; + border-color: #ddd; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777; + cursor: not-allowed; + background-color: #fff; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: middle; + background-color: #777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #337ab7; + background-color: #fff; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #eee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-right: auto; + margin-left: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.alert-danger hr { + border-top-color: #e4b9c0; +} +.alert-danger .alert-link { + color: #843534; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); +} +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + -webkit-transition: width .6s ease; + -o-transition: width .6s ease; + transition: width .6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + padding-left: 0; + margin-bottom: 20px; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid #ddd; +} +.list-group-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + color: #555; + text-decoration: none; + background-color: #f5f5f5; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + color: #777; + cursor: not-allowed; + background-color: #eee; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + color: #fff; + background-color: #a94442; + border-color: #a94442; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: 0 1px 1px rgba(0, 0, 0, .05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-right: 15px; + padding-left: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #ddd; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + margin-bottom: 0; + border: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #ddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #ddd; +} +.panel-default { + border-color: #ddd; +} +.panel-default > .panel-heading { + color: #333; + background-color: #f5f5f5; + border-color: #ddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #333; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ddd; +} +.panel-primary { + border-color: #337ab7; +} +.panel-primary > .panel-heading { + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #337ab7; +} +.panel-primary > .panel-heading .badge { + color: #337ab7; + background-color: #fff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #337ab7; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #dff0d8; + background-color: #3c763d; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #d9edf7; + background-color: #31708f; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #fcf8e3; + background-color: #8a6d3b; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #f2dede; + background-color: #a94442; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, .15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + filter: alpha(opacity=20); + opacity: .2; +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + filter: alpha(opacity=50); + opacity: .5; +} +button.close { + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: transparent; + border: 0; +} +.modal-open { + overflow: hidden; +} +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out; + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + outline: 0; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); + box-shadow: 0 3px 9px rgba(0, 0, 0, .5); +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + filter: alpha(opacity=0); + opacity: 0; +} +.modal-backdrop.in { + filter: alpha(opacity=50); + opacity: .5; +} +.modal-header { + min-height: 16.42857143px; + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 12px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + filter: alpha(opacity=0); + opacity: 0; + + line-break: auto; +} +.tooltip.in { + filter: alpha(opacity=90); + opacity: .9; +} +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-left .tooltip-arrow { + right: 5px; + bottom: 0; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + + line-break: auto; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + content: ""; + border-width: 10px; +} +.popover.top > .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, .25); + border-bottom-width: 0; +} +.popover.top > .arrow:after { + bottom: 1px; + margin-left: -10px; + content: " "; + border-top-color: #fff; + border-bottom-width: 0; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, .25); + border-left-width: 0; +} +.popover.right > .arrow:after { + bottom: -10px; + left: 1px; + content: " "; + border-right-color: #fff; + border-left-width: 0; +} +.popover.bottom > .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, .25); +} +.popover.bottom > .arrow:after { + top: 1px; + margin-left: -10px; + content: " "; + border-top-width: 0; + border-bottom-color: #fff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, .25); +} +.popover.left > .arrow:after { + right: 1px; + bottom: -10px; + content: " "; + border-right-width: 0; + border-left-color: #fff; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + left: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + left: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + left: 0; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); + filter: alpha(opacity=50); + opacity: .5; +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control:hover, +.carousel-control:focus { + color: #fff; + text-decoration: none; + filter: alpha(opacity=90); + outline: 0; + opacity: .9; +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -10px; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + font-family: serif; + line-height: 1; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); + border: 1px solid #fff; + border-radius: 10px; +} +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #fff; +} +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -15px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -15px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -15px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-right: auto; + margin-left: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +/*# sourceMappingURL=bootstrap.css.map */ diff --git a/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map new file mode 100644 index 00000000..9f60ed2b --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap.css","less/normalize.less","less/print.less","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"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,iBAAA;CHsR9C;AGrRmC;EAAW,iBAAA;CHwR9C;AGvRmC;EAAW,iBAAA;CH0R9C;AGzRmC;EAAW,iBAAA;CH4R9C;AG3RmC;EAAW,iBAAA;CH8R9C;AG7RmC;EAAW,iBAAA;CHgS9C;AG/RmC;EAAW,iBAAA;CHkS9C;AGjSmC;EAAW,iBAAA;CHoS9C;AGnSmC;EAAW,iBAAA;CHsS9C;AGrSmC;EAAW,iBAAA;CHwS9C;AGvSmC;EAAW,iBAAA;CH0S9C;AGzSmC;EAAW,iBAAA;CH4S9C;AG3SmC;EAAW,iBAAA;CH8S9C;AG7SmC;EAAW,iBAAA;CHgT9C;AG/SmC;EAAW,iBAAA;CHkT9C;AGjTmC;EAAW,iBAAA;CHoT9C;AGnTmC;EAAW,iBAAA;CHsT9C;AGrTmC;EAAW,iBAAA;CHwT9C;AGvTmC;EAAW,iBAAA;CH0T9C;AGzTmC;EAAW,iBAAA;CH4T9C;AG3TmC;EAAW,iBAAA;CH8T9C;AG7TmC;EAAW,iBAAA;CHgU9C;AG/TmC;EAAW,iBAAA;CHkU9C;AGjUmC;EAAW,iBAAA;CHoU9C;AGnUmC;EAAW,iBAAA;CHsU9C;AGrUmC;EAAW,iBAAA;CHwU9C;AGvUmC;EAAW,iBAAA;CH0U9C;AGzUmC;EAAW,iBAAA;CH4U9C;AG3UmC;EAAW,iBAAA;CH8U9C;AG7UmC;EAAW,iBAAA;CHgV9C;AG/UmC;EAAW,iBAAA;CHkV9C;AGjVmC;EAAW,iBAAA;CHoV9C;AGnVmC;EAAW,iBAAA;CHsV9C;AGrVmC;EAAW,iBAAA;CHwV9C;AGvVmC;EAAW,iBAAA;CH0V9C;AGzVmC;EAAW,iBAAA;CH4V9C;AG3VmC;EAAW,iBAAA;CH8V9C;AG7VmC;EAAW,iBAAA;CHgW9C;AG/VmC;EAAW,iBAAA;CHkW9C;AGjWmC;EAAW,iBAAA;CHoW9C;AGnWmC;EAAW,iBAAA;CHsW9C;AGrWmC;EAAW,iBAAA;CHwW9C;AGvWmC;EAAW,iBAAA;CH0W9C;AGzWmC;EAAW,iBAAA;CH4W9C;AG3WmC;EAAW,iBAAA;CH8W9C;AG7WmC;EAAW,iBAAA;CHgX9C;AG/WmC;EAAW,iBAAA;CHkX9C;AGjXmC;EAAW,iBAAA;CHoX9C;AGnXmC;EAAW,iBAAA;CHsX9C;AGrXmC;EAAW,iBAAA;CHwX9C;AGvXmC;EAAW,iBAAA;CH0X9C;AGzXmC;EAAW,iBAAA;CH4X9C;AG3XmC;EAAW,iBAAA;CH8X9C;AG7XmC;EAAW,iBAAA;CHgY9C;AG/XmC;EAAW,iBAAA;CHkY9C;AGjYmC;EAAW,iBAAA;CHoY9C;AGnYmC;EAAW,iBAAA;CHsY9C;AGrYmC;EAAW,iBAAA;CHwY9C;AGvYmC;EAAW,iBAAA;CH0Y9C;AGzYmC;EAAW,iBAAA;CH4Y9C;AG3YmC;EAAW,iBAAA;CH8Y9C;AG7YmC;EAAW,iBAAA;CHgZ9C;AG/YmC;EAAW,iBAAA;CHkZ9C;AGjZmC;EAAW,iBAAA;CHoZ9C;AGnZmC;EAAW,iBAAA;CHsZ9C;AGrZmC;EAAW,iBAAA;CHwZ9C;AGvZmC;EAAW,iBAAA;CH0Z9C;AGzZmC;EAAW,iBAAA;CH4Z9C;AG3ZmC;EAAW,iBAAA;CH8Z9C;AG7ZmC;EAAW,iBAAA;CHga9C;AG/ZmC;EAAW,iBAAA;CHka9C;AGjamC;EAAW,iBAAA;CHoa9C;AGnamC;EAAW,iBAAA;CHsa9C;AGramC;EAAW,iBAAA;CHwa9C;AGvamC;EAAW,iBAAA;CH0a9C;AGzamC;EAAW,iBAAA;CH4a9C;AG3amC;EAAW,iBAAA;CH8a9C;AG7amC;EAAW,iBAAA;CHgb9C;AG/amC;EAAW,iBAAA;CHkb9C;AGjbmC;EAAW,iBAAA;CHob9C;AGnbmC;EAAW,iBAAA;CHsb9C;AGrbmC;EAAW,iBAAA;CHwb9C;AGvbmC;EAAW,iBAAA;CH0b9C;AGzbmC;EAAW,iBAAA;CH4b9C;AG3bmC;EAAW,iBAAA;CH8b9C;AG7bmC;EAAW,iBAAA;CHgc9C;AG/bmC;EAAW,iBAAA;CHkc9C;AGjcmC;EAAW,iBAAA;CHoc9C;AGncmC;EAAW,iBAAA;CHsc9C;AGrcmC;EAAW,iBAAA;CHwc9C;AGvcmC;EAAW,iBAAA;CH0c9C;AGzcmC;EAAW,iBAAA;CH4c9C;AG3cmC;EAAW,iBAAA;CH8c9C;AG7cmC;EAAW,iBAAA;CHgd9C;AG/cmC;EAAW,iBAAA;CHkd9C;AGjdmC;EAAW,iBAAA;CHod9C;AGndmC;EAAW,iBAAA;CHsd9C;AGrdmC;EAAW,iBAAA;CHwd9C;AGvdmC;EAAW,iBAAA;CH0d9C;AGzdmC;EAAW,iBAAA;CH4d9C;AG3dmC;EAAW,iBAAA;CH8d9C;AG7dmC;EAAW,iBAAA;CHge9C;AG/dmC;EAAW,iBAAA;CHke9C;AGjemC;EAAW,iBAAA;CHoe9C;AGnemC;EAAW,iBAAA;CHse9C;AGremC;EAAW,iBAAA;CHwe9C;AGvemC;EAAW,iBAAA;CH0e9C;AGzemC;EAAW,iBAAA;CH4e9C;AG3emC;EAAW,iBAAA;CH8e9C;AG7emC;EAAW,iBAAA;CHgf9C;AG/emC;EAAW,iBAAA;CHkf9C;AGjfmC;EAAW,iBAAA;CHof9C;AGnfmC;EAAW,iBAAA;CHsf9C;AGrfmC;EAAW,iBAAA;CHwf9C;AGvfmC;EAAW,iBAAA;CH0f9C;AGzfmC;EAAW,iBAAA;CH4f9C;AG3fmC;EAAW,iBAAA;CH8f9C;AG7fmC;EAAW,iBAAA;CHggB9C;AG/fmC;EAAW,iBAAA;CHkgB9C;AGjgBmC;EAAW,iBAAA;CHogB9C;AGngBmC;EAAW,iBAAA;CHsgB9C;AGrgBmC;EAAW,iBAAA;CHwgB9C;AGvgBmC;EAAW,iBAAA;CH0gB9C;AGzgBmC;EAAW,iBAAA;CH4gB9C;AG3gBmC;EAAW,iBAAA;CH8gB9C;AG7gBmC;EAAW,iBAAA;CHghB9C;AG/gBmC;EAAW,iBAAA;CHkhB9C;AGjhBmC;EAAW,iBAAA;CHohB9C;AGnhBmC;EAAW,iBAAA;CHshB9C;AGrhBmC;EAAW,iBAAA;CHwhB9C;AGvhBmC;EAAW,iBAAA;CH0hB9C;AGzhBmC;EAAW,iBAAA;CH4hB9C;AG3hBmC;EAAW,iBAAA;CH8hB9C;AG7hBmC;EAAW,iBAAA;CHgiB9C;AG/hBmC;EAAW,iBAAA;CHkiB9C;AGjiBmC;EAAW,iBAAA;CHoiB9C;AGniBmC;EAAW,iBAAA;CHsiB9C;AGriBmC;EAAW,iBAAA;CHwiB9C;AGviBmC;EAAW,iBAAA;CH0iB9C;AGziBmC;EAAW,iBAAA;CH4iB9C;AG3iBmC;EAAW,iBAAA;CH8iB9C;AG7iBmC;EAAW,iBAAA;CHgjB9C;AG/iBmC;EAAW,iBAAA;CHkjB9C;AGjjBmC;EAAW,iBAAA;CHojB9C;AGnjBmC;EAAW,iBAAA;CHsjB9C;AGrjBmC;EAAW,iBAAA;CHwjB9C;AGvjBmC;EAAW,iBAAA;CH0jB9C;AGzjBmC;EAAW,iBAAA;CH4jB9C;AG3jBmC;EAAW,iBAAA;CH8jB9C;AG7jBmC;EAAW,iBAAA;CHgkB9C;AG/jBmC;EAAW,iBAAA;CHkkB9C;AGjkBmC;EAAW,iBAAA;CHokB9C;AGnkBmC;EAAW,iBAAA;CHskB9C;AGrkBmC;EAAW,iBAAA;CHwkB9C;AGvkBmC;EAAW,iBAAA;CH0kB9C;AGzkBmC;EAAW,iBAAA;CH4kB9C;AG3kBmC;EAAW,iBAAA;CH8kB9C;AG7kBmC;EAAW,iBAAA;CHglB9C;AG/kBmC;EAAW,iBAAA;CHklB9C;AGjlBmC;EAAW,iBAAA;CHolB9C;AGnlBmC;EAAW,iBAAA;CHslB9C;AGrlBmC;EAAW,iBAAA;CHwlB9C;AGvlBmC;EAAW,iBAAA;CH0lB9C;AGzlBmC;EAAW,iBAAA;CH4lB9C;AG3lBmC;EAAW,iBAAA;CH8lB9C;AG7lBmC;EAAW,iBAAA;CHgmB9C;AG/lBmC;EAAW,iBAAA;CHkmB9C;AGjmBmC;EAAW,iBAAA;CHomB9C;AGnmBmC;EAAW,iBAAA;CHsmB9C;AGrmBmC;EAAW,iBAAA;CHwmB9C;AGvmBmC;EAAW,iBAAA;CH0mB9C;AGzmBmC;EAAW,iBAAA;CH4mB9C;AG3mBmC;EAAW,iBAAA;CH8mB9C;AG7mBmC;EAAW,iBAAA;CHgnB9C;AG/mBmC;EAAW,iBAAA;CHknB9C;AGjnBmC;EAAW,iBAAA;CHonB9C;AGnnBmC;EAAW,iBAAA;CHsnB9C;AGrnBmC;EAAW,iBAAA;CHwnB9C;AGvnBmC;EAAW,iBAAA;CH0nB9C;AGznBmC;EAAW,iBAAA;CH4nB9C;AG3nBmC;EAAW,iBAAA;CH8nB9C;AG7nBmC;EAAW,iBAAA;CHgoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AGvoBmC;EAAW,iBAAA;CH0oB9C;AGzoBmC;EAAW,iBAAA;CH4oB9C;AG3oBmC;EAAW,iBAAA;CH8oB9C;AG7oBmC;EAAW,iBAAA;CHgpB9C;AG/oBmC;EAAW,iBAAA;CHkpB9C;AGjpBmC;EAAW,iBAAA;CHopB9C;AGnpBmC;EAAW,iBAAA;CHspB9C;AGrpBmC;EAAW,iBAAA;CHwpB9C;AGvpBmC;EAAW,iBAAA;CH0pB9C;AGzpBmC;EAAW,iBAAA;CH4pB9C;AG3pBmC;EAAW,iBAAA;CH8pB9C;AG7pBmC;EAAW,iBAAA;CHgqB9C;AG/pBmC;EAAW,iBAAA;CHkqB9C;AGjqBmC;EAAW,iBAAA;CHoqB9C;AGnqBmC;EAAW,iBAAA;CHsqB9C;AGrqBmC;EAAW,iBAAA;CHwqB9C;AGvqBmC;EAAW,iBAAA;CH0qB9C;AGzqBmC;EAAW,iBAAA;CH4qB9C;AG3qBmC;EAAW,iBAAA;CH8qB9C;AG7qBmC;EAAW,iBAAA;CHgrB9C;AG/qBmC;EAAW,iBAAA;CHkrB9C;AGjrBmC;EAAW,iBAAA;CHorB9C;AGnrBmC;EAAW,iBAAA;CHsrB9C;AGrrBmC;EAAW,iBAAA;CHwrB9C;AGvrBmC;EAAW,iBAAA;CH0rB9C;AGzrBmC;EAAW,iBAAA;CH4rB9C;AG3rBmC;EAAW,iBAAA;CH8rB9C;AG7rBmC;EAAW,iBAAA;CHgsB9C;AG/rBmC;EAAW,iBAAA;CHksB9C;AGjsBmC;EAAW,iBAAA;CHosB9C;AGnsBmC;EAAW,iBAAA;CHssB9C;AGrsBmC;EAAW,iBAAA;CHwsB9C;AGvsBmC;EAAW,iBAAA;CH0sB9C;AGzsBmC;EAAW,iBAAA;CH4sB9C;AG3sBmC;EAAW,iBAAA;CH8sB9C;AG7sBmC;EAAW,iBAAA;CHgtB9C;AG/sBmC;EAAW,iBAAA;CHktB9C;AGjtBmC;EAAW,iBAAA;CHotB9C;AGntBmC;EAAW,iBAAA;CHstB9C;AGrtBmC;EAAW,iBAAA;CHwtB9C;AGvtBmC;EAAW,iBAAA;CH0tB9C;AGztBmC;EA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DH;AezkDC;EACE,oBAAA;Cf2kDH;Ae5kDC;EACE,WAAA;Cf8kDH;Ae/kDC;EACE,oBAAA;CfilDH;AellDC;EACE,mBAAA;CfolDH;AehlDC;EACE,YAAA;CfklDH;AelmDC;EACE,WAAA;CfomDH;AermDC;EACE,mBAAA;CfumDH;AexmDC;EACE,mBAAA;Cf0mDH;Ae3mDC;EACE,UAAA;Cf6mDH;Ae9mDC;EACE,mBAAA;CfgnDH;AejnDC;EACE,mBAAA;CfmnDH;AepnDC;EACE,UAAA;CfsnDH;AevnDC;EACE,mBAAA;CfynDH;Ae1nDC;EACE,mBAAA;Cf4nDH;Ae7nDC;EACE,UAAA;Cf+nDH;AehoDC;EACE,mBAAA;CfkoDH;AenoDC;EACE,kBAAA;CfqoDH;AejoDC;EACE,WAAA;CfmoDH;AernDC;EACE,kBAAA;CfunDH;AexnDC;EACE,0BAAA;Cf0nDH;Ae3nDC;EACE,0BAAA;Cf6nDH;Ae9nDC;EACE,iBAAA;CfgoDH;AejoDC;EACE,0BAAA;CfmoDH;AepoDC;EACE,0BAAA;CfsoDH;AevoDC;EACE,iBAAA;CfyoDH;Ae1oDC;EACE,0BAAA;Cf4oDH;Ae7oDC;EACE,0BAAA;Cf+oDH;AehpDC;EACE,iBAAA;CfkpDH;AenpDC;EACE,0BAAA;CfqpDH;AetpDC;EACE,yBAAA;CfwpDH;AezpDC;EACE,gBAAA;Cf2pDH;Aa3pDD;EElCI;IACE,YAAA;GfgsDH;EezrDD;IACE,YAAA;Gf2rDD;Ee5rDD;IACE,oBAAA;Gf8rDD;Ee/rDD;IACE,oBAAA;GfisDD;EelsDD;IACE,WAAA;GfosDD;EersDD;IACE,oBAAA;GfusDD;EexsDD;IACE,oBAAA;Gf0sDD;Ee3sDD;IACE,WAAA;Gf6sDD;Ee9sDD;IACE,oBAAA;GfgtDD;EejtDD;IACE,oBAAA;GfmtDD;EeptDD;IACE,WAAA;GfstDD;EevtDD;IACE,oBAAA;GfytDD;Ee1tDD;IACE,mBAAA;Gf4tDD;Ee9sDD;IACE,YAAA;GfgtDD;EejtDD;IACE,oBAAA;GfmtDD;EeptDD;IACE,oBAAA;GfstDD;EevtDD;IACE,WAAA;GfytDD;Ee1tDD;IACE,oBAAA;Gf4tDD;Ee7tDD;IACE,oBAAA;Gf+tDD;EehuDD;IACE,WAAA;GfkuDD;EenuDD;IACE,oBAAA;GfquDD;EetuDD;IACE,oBAAA;GfwuDD;EezuDD;IACE,WAAA;Gf2uDD;Ee5uDD;IACE,oBAAA;Gf8uDD;Ee/uDD;IACE,mBAAA;GfivDD;Ee7uDD;IACE,YAAA;Gf+uDD;Ee/vDD;IACE,WAAA;GfiwDD;EelwDD;IACE,mBAAA;GfowDD;EerwDD;IACE,mBAAA;GfuwDD;EexwDD;IACE,UAAA;Gf0wDD;Ee3wDD;IACE,mBAAA;Gf6wDD;Ee9wDD;IACE,mBAAA;GfgxDD;EejxDD;IACE,UAAA;GfmxDD;EepxDD;IACE,mBAAA;GfsxDD;EevxDD;IACE,mBAAA;GfyxDD;Ee1xDD;IACE,UAAA;Gf4xDD;Ee7xDD;IACE,mBAAA;Gf+xDD;EehyDD;IACE,kBAAA;GfkyDD;Ee9xDD;IACE,WAAA;GfgyDD;EelxDD;IACE,kBAAA;GfoxDD;EerxDD;IACE,0BAAA;GfuxDD;EexxDD;IACE,0BAAA;Gf0xDD;Ee3xDD;IACE,iBAAA;Gf6xDD;Ee9xDD;IACE,0BAAA;GfgyDD;EejyDD;IACE,0BAAA;GfmyDD;EepyDD;IACE,iBAAA;GfsyDD;EevyDD;IACE,0BAAA;GfyyDD;Ee1yDD;IACE,0BAAA;Gf4yDD;Ee7yDD;IACE,iBAAA;Gf+yDD;EehzDD;IACE,0BAAA;GfkzDD;EenzDD;IACE,yBAAA;GfqzDD;EetzDD;IACE,gBAAA;GfwzDD;CACF;AahzDD;EE3CI;IACE,YAAA;Gf81DH;Eev1DD;IACE,YAAA;Gfy1DD;Ee11DD;IACE,oBAAA;Gf41DD;Ee71DD;IACE,oBAAA;Gf+1DD;Eeh2DD;IACE,WAAA;Gfk2DD;Een2DD;IACE,oBAAA;Gfq2DD;Eet2DD;IACE,oBAAA;Gfw2DD;Eez2DD;IACE,WAAA;Gf22DD;Ee52DD;IACE,oBAAA;Gf82DD;Ee/2DD;IACE,oBAAA;Gfi3DD;Eel3DD;IACE,WAAA;Gfo3DD;Eer3DD;IACE,oBAAA;Gfu3DD;Eex3DD;IACE,mBAAA;Gf03DD;Ee52DD;IACE,YAAA;Gf82DD;Ee/2DD;IACE,oBAAA;Gfi3DD;Eel3DD;IACE,oBAAA;Gfo3DD;Eer3DD;IACE,WAAA;Gfu3DD;Eex3DD;IACE,oBAAA;Gf03DD;Ee33DD;IACE,oBAAA;Gf63DD;Ee93DD;IACE,WAAA;Gfg4DD;Eej4DD;IACE,oBAAA;Gfm4DD;Eep4DD;IACE,oBAAA;Gfs4DD;Eev4DD;IACE,WAAA;Gfy4DD;Ee14DD;IACE,oBAAA;Gf44DD;Ee74DD;IACE,mBAAA;Gf+4DD;Ee34DD;IACE,YAAA;Gf64DD;Ee75DD;IACE,WAAA;Gf+5DD;Eeh6DD;IACE,mBAAA;Gfk6DD;Een6DD;IACE,mBAAA;Gfq6DD;Eet6DD;IACE,UAAA;Gfw6DD;Eez6DD;IACE,mBAAA;Gf26DD;Ee56DD;IACE,mBAAA;Gf86DD;Ee/6DD;IACE,UAAA;Gfi7DD;Eel7DD;IACE,mBAAA;Gfo7DD;Eer7DD;IACE,mBAAA;Gfu7DD;Eex7DD;IACE,UAAA;Gf07DD;Ee37DD;IACE,mBAAA;Gf67DD;Ee97DD;IACE,kBAAA;Gfg8DD;Ee57DD;IACE,WAAA;Gf87DD;Eeh7DD;IACE,kBAAA;Gfk7DD;Een7DD;IACE,0BAAA;Gfq7DD;Eet7DD;IACE,0BAAA;Gfw7DD;Eez7DD;IACE,iBAAA;Gf27DD;Ee57DD;IACE,0BAAA;Gf87DD;Ee/7DD;IACE,0BAAA;Gfi8DD;Eel8DD;IACE,iBAAA;Gfo8DD;Eer8DD;IACE,0BAAA;Gfu8DD;Eex8DD;IACE,0BAAA;Gf08DD;Ee38DD;IACE,iBAAA;Gf68DD;Ee98DD;IACE,0BAAA;Gfg9DD;Eej9DD;IACE,yBAAA;Gfm9DD;Eep9DD;IACE,gBAAA;Gfs9DD;CACF;Aa38DD;EE9CI;IACE,YAAA;Gf4/DH;Eer/DD;IACE,YAAA;Gfu/DD;Eex/DD;IACE,oBAAA;Gf0/DD;Ee3/DD;IACE,oBAAA;Gf6/DD;Ee9/DD;IACE,WAAA;GfggED;EejgED;IACE,oBAAA;GfmgED;EepgED;IACE,oBAAA;GfsgED;EevgED;IACE,WAAA;GfygED;Ee1gED;IACE,oBAAA;Gf4gED;Ee7gED;IACE,oBAAA;Gf+gED;EehhED;IACE,WAAA;GfkhED;EenhED;IACE,oBAAA;GfqhED;EethED;IACE,mBAAA;GfwhED;Ee1gED;IACE,YAAA;Gf4gED;Ee7gED;IACE,oBAAA;Gf+gED;EehhED;IACE,oBAAA;GfkhED;EenhED;IACE,WAAA;GfqhED;EethED;IACE,oBAAA;GfwhED;EezhED;IACE,oBAAA;Gf2hED;Ee5hED;IACE,WAAA;Gf8hED;Ee/hED;IACE,oBAAA;GfiiED;EeliED;IACE,oBAAA;GfoiED;EeriED;IACE,WAAA;GfuiED;EexiED;IACE,oBAAA;Gf0iED;Ee3iED;IACE,mBAAA;Gf6iED;EeziED;IACE,YAAA;Gf2iED;Ee3jED;IACE,WAAA;Gf6jED;Ee9jED;IACE,mBAAA;GfgkED;EejkED;IACE,mBAAA;GfmkED;EepkED;IACE,UAAA;GfskED;EevkED;IACE,mBAAA;GfykED;Ee1kED;IACE,mBAAA;Gf4kED;Ee7kED;IACE,UAAA;Gf+kED;EehlED;IACE,mBAAA;GfklED;EenlED;IACE,mBAAA;GfqlED;EetlED;IACE,UAAA;GfwlED;EezlED;IACE,mBAAA;Gf2lED;Ee5lED;IACE,kBAAA;Gf8lED;Ee1lED;IACE,WAAA;Gf4lED;Ee9kED;IACE,kBAAA;GfglED;EejlED;IACE,0BAAA;GfmlED;EeplED;IACE,0BAAA;GfslED;EevlED;IACE,iBAAA;GfylED;Ee1lED;IACE,0BAAA;Gf4lED;Ee7lED;IACE,0BAAA;Gf+lED;EehmED;IACE,iBAAA;GfkmED;EenmED;IACE,0BAAA;GfqmED;EetmED;IACE,0BAAA;GfwmED;EezmED;IACE,iBAAA;Gf2mED;Ee5mED;IACE,0BAAA;Gf8mED;Ee/mED;IACE,yBAAA;GfinED;EelnED;IACE,gBAAA;GfonED;CACF;AgBxrED;EACE,8BAAA;ChB0rED;AgBxrED;EACE,iBAAA;EACA,oBAAA;EACA,eAAA;EACA,iBAAA;ChB0rED;AgBxrED;EACE,iBAAA;ChB0rED;AgBprED;EACE,YAAA;EACA,gBAAA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","file":"bootstrap.css","sourcesContent":["/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: 1px dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important;\n box-shadow: none !important;\n text-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('../fonts/glyphicons-halflings-regular.eot');\n src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\2a\";\n}\n.glyphicon-plus:before {\n content: \"\\2b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #ffffff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: normal;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n background-color: #fcf8e3;\n padding: .2em;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted #777777;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: '\\2014 \\00A0';\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n text-align: right;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: '';\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: '\\00A0 \\2014';\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #ffffff;\n background-color: #333333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n word-break: break-all;\n word-wrap: break-word;\n color: #333333;\n background-color: #f5f5f5;\n border: 1px solid #cccccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.row {\n margin-left: -15px;\n margin-right: -15px;\n}\n.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #dddddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #dddddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #dddddd;\n}\n.table .table {\n background-color: #ffffff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #dddddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #dddddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\ntable col[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-column;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-cell;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #dddddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n min-width: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: bold;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #ffffff;\n background-image: none;\n border: 1px solid #cccccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999999;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.form-control-static {\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n min-height: 34px;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-left: 0;\n padding-right: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n border-color: #3c763d;\n background-color: #dff0d8;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n border-color: #8a6d3b;\n background-color: #fcf8e3;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n border-color: #a94442;\n background-color: #f2dede;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n margin-top: 0;\n margin-bottom: 0;\n padding-top: 7px;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-left: -15px;\n margin-right: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n text-align: right;\n margin-bottom: 0;\n padding-top: 7px;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 14.333333px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333333;\n background-color: #ffffff;\n border-color: #cccccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n background-image: none;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #ffffff;\n border-color: #cccccc;\n}\n.btn-default .badge {\n color: #ffffff;\n background-color: #333333;\n}\n.btn-primary {\n color: #ffffff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #ffffff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #ffffff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #ffffff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #ffffff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n background-image: none;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #ffffff;\n}\n.btn-success {\n color: #ffffff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #ffffff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #ffffff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #ffffff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #ffffff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n background-image: none;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #ffffff;\n}\n.btn-info {\n color: #ffffff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #ffffff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #ffffff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #ffffff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #ffffff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n background-image: none;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #ffffff;\n}\n.btn-warning {\n color: #ffffff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #ffffff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #ffffff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #ffffff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #ffffff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n background-image: none;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #ffffff;\n}\n.btn-danger {\n color: #ffffff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #ffffff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #ffffff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #ffffff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #ffffff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n background-image: none;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #ffffff;\n}\n.btn-link {\n color: #337ab7;\n font-weight: normal;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n list-style: none;\n font-size: 14px;\n text-align: left;\n background-color: #ffffff;\n border: 1px solid #cccccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n background-clip: padding-box;\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n text-decoration: none;\n color: #262626;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #ffffff;\n text-decoration: none;\n outline: 0;\n background-color: #337ab7;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n cursor: not-allowed;\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n left: auto;\n right: 0;\n}\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n content: \"\";\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n left: auto;\n right: 0;\n }\n .navbar-right .dropdown-menu-left {\n left: 0;\n right: auto;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-bottom-left-radius: 4px;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: normal;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #cccccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n margin-bottom: 0;\n padding-left: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n background-color: transparent;\n cursor: not-allowed;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #dddddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #dddddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-bottom-color: transparent;\n cursor: default;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #dddddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #dddddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #ffffff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #ffffff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #dddddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #dddddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #ffffff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n overflow-x: visible;\n padding-right: 15px;\n padding-left: 15px;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-left: 0;\n padding-right: 0;\n }\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.navbar-brand {\n float: left;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n height: 50px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: 15px;\n padding: 9px 10px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n margin-left: -15px;\n margin-right: -15px;\n padding: 10px 15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-left: 15px;\n margin-right: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #cccccc;\n background-color: transparent;\n}\n.navbar-default .navbar-toggle {\n border-color: #dddddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #dddddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n background-color: #e7e7e7;\n color: #555555;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #cccccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-link {\n color: #777777;\n}\n.navbar-default .navbar-link:hover {\n color: #333333;\n}\n.navbar-default .btn-link {\n color: #777777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #cccccc;\n}\n.navbar-inverse {\n background-color: #222222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #ffffff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #ffffff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #ffffff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #ffffff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n background-color: #080808;\n color: #ffffff;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #ffffff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #ffffff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #ffffff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #ffffff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n content: \"/\\00a0\";\n padding: 0 5px;\n color: #cccccc;\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n line-height: 1.42857143;\n text-decoration: none;\n color: #337ab7;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n margin-left: -1px;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-bottom-left-radius: 4px;\n border-top-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-bottom-right-radius: 4px;\n border-top-right-radius: 4px;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 3;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #dddddd;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 2;\n color: #ffffff;\n background-color: #337ab7;\n border-color: #337ab7;\n cursor: default;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n background-color: #ffffff;\n border-color: #dddddd;\n cursor: not-allowed;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-bottom-left-radius: 6px;\n border-top-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-bottom-right-radius: 6px;\n border-top-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-bottom-left-radius: 3px;\n border-top-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-bottom-right-radius: 3px;\n border-top-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n list-style: none;\n text-align: center;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n background-color: #ffffff;\n cursor: not-allowed;\n}\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: #ffffff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n}\na.label:hover,\na.label:focus {\n color: #ffffff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n color: #ffffff;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #ffffff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #ffffff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-left: 60px;\n padding-right: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-left: auto;\n margin-right: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n background-color: #dff0d8;\n border-color: #d6e9c6;\n color: #3c763d;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n background-color: #d9edf7;\n border-color: #bce8f1;\n color: #31708f;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n background-color: #fcf8e3;\n border-color: #faebcc;\n color: #8a6d3b;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n background-color: #f2dede;\n border-color: #ebccd1;\n color: #a94442;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n overflow: hidden;\n height: 20px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #ffffff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n margin-bottom: 20px;\n padding-left: 0;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n}\n.list-group-item:first-child {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n text-decoration: none;\n color: #555555;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n background-color: #eeeeee;\n color: #777777;\n cursor: not-allowed;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #ffffff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #ffffff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #dddddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-left: 15px;\n padding-right: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #dddddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n border: 0;\n margin-bottom: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #dddddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #dddddd;\n}\n.panel-default {\n border-color: #dddddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #dddddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #dddddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #dddddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #ffffff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #ffffff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n height: 100%;\n width: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000000;\n text-shadow: 0 1px 0 #ffffff;\n opacity: 0.2;\n filter: alpha(opacity=20);\n}\n.close:hover,\n.close:focus {\n color: #000000;\n text-decoration: none;\n cursor: pointer;\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n display: none;\n overflow: hidden;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #ffffff;\n border: 1px solid #999999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n background-clip: padding-box;\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000000;\n}\n.modal-backdrop.fade {\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.modal-backdrop.in {\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n min-height: 16.42857143px;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-left: 5px;\n margin-bottom: 0;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 12px;\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.tooltip.in {\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.tooltip.top {\n margin-top: -3px;\n padding: 5px 0;\n}\n.tooltip.right {\n margin-left: 3px;\n padding: 0 5px;\n}\n.tooltip.bottom {\n margin-top: 3px;\n padding: 5px 0;\n}\n.tooltip.left {\n margin-left: -3px;\n padding: 0 5px;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #ffffff;\n text-align: center;\n background-color: #000000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000000;\n}\n.tooltip.top-left .tooltip-arrow {\n bottom: 0;\n right: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000000;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 14px;\n background-color: #ffffff;\n background-clip: padding-box;\n border: 1px solid #cccccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover-title {\n margin: 0;\n padding: 8px 14px;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow:after {\n border-width: 10px;\n content: \"\";\n}\n.popover.top > .arrow {\n left: 50%;\n margin-left: -11px;\n border-bottom-width: 0;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n bottom: -11px;\n}\n.popover.top > .arrow:after {\n content: \" \";\n bottom: 1px;\n margin-left: -10px;\n border-bottom-width: 0;\n border-top-color: #ffffff;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-left-width: 0;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n.popover.right > .arrow:after {\n content: \" \";\n left: 1px;\n bottom: -10px;\n border-left-width: 0;\n border-right-color: #ffffff;\n}\n.popover.bottom > .arrow {\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n top: -11px;\n}\n.popover.bottom > .arrow:after {\n content: \" \";\n top: 1px;\n margin-left: -10px;\n border-top-width: 0;\n border-bottom-color: #ffffff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n content: \" \";\n right: 1px;\n border-right-width: 0;\n border-left-color: #ffffff;\n bottom: -10px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n}\n.carousel-inner > .item {\n display: none;\n position: relative;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 15%;\n opacity: 0.5;\n filter: alpha(opacity=50);\n font-size: 20px;\n color: #ffffff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n}\n.carousel-control.right {\n left: auto;\n right: 0;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n}\n.carousel-control:hover,\n.carousel-control:focus {\n outline: 0;\n color: #ffffff;\n text-decoration: none;\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n margin-top: -10px;\n z-index: 5;\n display: inline-block;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n line-height: 1;\n font-family: serif;\n}\n.carousel-control .icon-prev:before {\n content: '\\2039';\n}\n.carousel-control .icon-next:before {\n content: '\\203a';\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid #ffffff;\n border-radius: 10px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-indicators .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: #ffffff;\n}\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #ffffff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -15px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -15px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -15px;\n }\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-footer:before,\n.modal-footer:after {\n content: \" \";\n display: table;\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n//\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important; // Black prints faster: h5bp.com/s\n box-shadow: none !important;\n text-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n\n // Bootstrap specific changes end\n}\n","//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star\n\n// Import the fonts\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('@{icon-font-path}@{icon-font-name}.eot');\n src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'),\n url('@{icon-font-path}@{icon-font-name}.woff2') format('woff2'),\n url('@{icon-font-path}@{icon-font-name}.woff') format('woff'),\n url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'),\n url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg');\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\2a\"; } }\n.glyphicon-plus { &:before { content: \"\\2b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// http://getbootstrap.com/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: http://a11yproject.com/posts/how-to-hide-content/\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0,0,0,0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They will be removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility){\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// WebKit-style focus\n\n.tab-focus() {\n // Default\n outline: thin dotted;\n // WebKit\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n","//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: normal;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n background-color: @state-warning-bg;\n padding: .2em;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @grid-float-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\nabbr[title],\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted @abbr-border-color;\n}\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: '\\2014 \\00A0'; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n text-align: right;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: ''; }\n &:after {\n content: '\\00A0 \\2014'; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n","// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n","// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n margin-right: auto;\n margin-left: auto;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-left: ceil((@gutter / -2));\n margin-right: floor((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-left: ceil((@grid-gutter-width / 2));\n padding-right: floor((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n","//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n}\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table cell sizing\n//\n// Reset default table behavior\n\ntable col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-column;\n}\ntable {\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-cell;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * 0.75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n","//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn't specific enough)\ninput[type=\"search\"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n}\n\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Disabled and read-only inputs\n //\n // HTML5 says that controls under a fieldset > legend:first-child won't be\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\n // don't honor that edge case; we style them as disabled anyway.\n &[disabled],\n &[readonly],\n fieldset[disabled] & {\n background-color: @input-bg-disabled;\n opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655\n }\n\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n\n // Reset height for `textarea`s\n textarea& {\n height: auto;\n }\n}\n\n\n// Search inputs in iOS\n//\n// This overrides the extra rounded corners on search inputs in iOS so that our\n// `.form-control` class can properly style them. Note that this cannot simply\n// be added to `.form-control` as it's not specific enough. For details, see\n// https://github.com/twbs/bootstrap/issues/11586.\n\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n\n\n// Special styles for iOS temporal inputs\n//\n// In Mobile Safari, setting `display: block` on temporal inputs causes the\n// text within the input to become vertically misaligned. As a workaround, we\n// set a pixel line-height that matches the given height of the input, but only\n// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848\n//\n// Note that as of 8.3, iOS doesn't support `datetime` or `week`.\n\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"],\n input[type=\"time\"],\n input[type=\"datetime-local\"],\n input[type=\"month\"] {\n &.form-control {\n line-height: @input-height-base;\n }\n\n &.input-sm,\n .input-group-sm & {\n line-height: @input-height-small;\n }\n\n &.input-lg,\n .input-group-lg & {\n line-height: @input-height-large;\n }\n }\n}\n\n\n// Form groups\n//\n// Designed to help with the organization and spacing of vertical forms. For\n// horizontal forms, use the predefined grid classes.\n\n.form-group {\n margin-bottom: @form-group-margin-bottom;\n}\n\n\n// Checkboxes and radios\n//\n// Indent the labels to position radios/checkboxes as hanging controls.\n\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n\n label {\n min-height: @line-height-computed; // Ensure the input doesn't jump when there is no text\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n }\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing\n}\n\n// Radios and checkboxes on same line\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px; // space out consecutive inline controls\n}\n\n// Apply same disabled cursor tweak as for inputs\n// Some special care is needed because
    - @Html.DisplayNameFor(model => model.ApplicationID) + @Html.DisplayNameFor(model => model.Active) @Html.DisplayNameFor(model => model.DisplayName) @@ -23,16 +23,22 @@ @Html.DisplayNameFor(model => model.RedirectUri) + @Html.DisplayNameFor(model => model.RefreshTokenLifeTime) + @Html.DisplayNameFor(model => model.Secret) + @Html.DisplayNameFor(model => model.Type) +
    - @Html.DisplayFor(modelItem => item.ApplicationID) + @Html.DisplayFor(modelItem => item.Active) @Html.DisplayFor(modelItem => item.DisplayName) @@ -43,13 +49,19 @@ @Html.DisplayFor(modelItem => item.RedirectUri) + @Html.DisplayFor(modelItem => item.RefreshTokenLifeTime) + @Html.DisplayFor(modelItem => item.Secret) - Edit | - Details | - Delete + @Html.DisplayFor(modelItem => item.Type) + + Edit | + Details | + Delete
    `s and ``s. +@table-cell-padding: 8px; +//** Padding for cells in `.table-condensed`. +@table-condensed-cell-padding: 5px; + +//** Default background color used for all tables. +@table-bg: transparent; +//** Background color used for `.table-striped`. +@table-bg-accent: #f9f9f9; +//** Background color used for `.table-hover`. +@table-bg-hover: #f5f5f5; +@table-bg-active: @table-bg-hover; + +//** Border color for table and cell borders. +@table-border-color: #ddd; + + +//== Buttons +// +//## For each of Bootstrap's buttons, define text, background and border color. + +@btn-font-weight: normal; + +@btn-default-color: #333; +@btn-default-bg: #fff; +@btn-default-border: #ccc; + +@btn-primary-color: #fff; +@btn-primary-bg: @brand-primary; +@btn-primary-border: darken(@btn-primary-bg, 5%); + +@btn-success-color: #fff; +@btn-success-bg: @brand-success; +@btn-success-border: darken(@btn-success-bg, 5%); + +@btn-info-color: #fff; +@btn-info-bg: @brand-info; +@btn-info-border: darken(@btn-info-bg, 5%); + +@btn-warning-color: #fff; +@btn-warning-bg: @brand-warning; +@btn-warning-border: darken(@btn-warning-bg, 5%); + +@btn-danger-color: #fff; +@btn-danger-bg: @brand-danger; +@btn-danger-border: darken(@btn-danger-bg, 5%); + +@btn-link-disabled-color: @gray-light; + +// Allows for customizing button radius independently from global border radius +@btn-border-radius-base: @border-radius-base; +@btn-border-radius-large: @border-radius-large; +@btn-border-radius-small: @border-radius-small; + + +//== Forms +// +//## + +//** `` background color +@input-bg: #fff; +//** `` background color +@input-bg-disabled: @gray-lighter; + +//** Text color for ``s +@input-color: @gray; +//** `` border color +@input-border: #ccc; + +// TODO: Rename `@input-border-radius` to `@input-border-radius-base` in v4 +//** Default `.form-control` border radius +// This has no effect on ``s in CSS. +@input-border-radius: @border-radius-base; +//** Large `.form-control` border radius +@input-border-radius-large: @border-radius-large; +//** Small `.form-control` border radius +@input-border-radius-small: @border-radius-small; + +//** Border color for inputs on focus +@input-border-focus: #66afe9; + +//** Placeholder text color +@input-color-placeholder: #999; + +//** Default `.form-control` height +@input-height-base: (@line-height-computed + (@padding-base-vertical * 2) + 2); +//** Large `.form-control` height +@input-height-large: (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2); +//** Small `.form-control` height +@input-height-small: (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2); + +//** `.form-group` margin +@form-group-margin-bottom: 15px; + +@legend-color: @gray-dark; +@legend-border-color: #e5e5e5; + +//** Background color for textual input addons +@input-group-addon-bg: @gray-lighter; +//** Border color for textual input addons +@input-group-addon-border-color: @input-border; + +//** Disabled cursor for form controls and buttons. +@cursor-disabled: not-allowed; + + +//== Dropdowns +// +//## Dropdown menu container and contents. + +//** Background for the dropdown menu. +@dropdown-bg: #fff; +//** Dropdown menu `border-color`. +@dropdown-border: rgba(0,0,0,.15); +//** Dropdown menu `border-color` **for IE8**. +@dropdown-fallback-border: #ccc; +//** Divider color for between dropdown items. +@dropdown-divider-bg: #e5e5e5; + +//** Dropdown link text color. +@dropdown-link-color: @gray-dark; +//** Hover color for dropdown links. +@dropdown-link-hover-color: darken(@gray-dark, 5%); +//** Hover background for dropdown links. +@dropdown-link-hover-bg: #f5f5f5; + +//** Active dropdown menu item text color. +@dropdown-link-active-color: @component-active-color; +//** Active dropdown menu item background color. +@dropdown-link-active-bg: @component-active-bg; + +//** Disabled dropdown menu item background color. +@dropdown-link-disabled-color: @gray-light; + +//** Text color for headers within dropdown menus. +@dropdown-header-color: @gray-light; + +//** Deprecated `@dropdown-caret-color` as of v3.1.0 +@dropdown-caret-color: #000; + + +//-- Z-index master list +// +// Warning: Avoid customizing these values. They're used for a bird's eye view +// of components dependent on the z-axis and are designed to all work together. +// +// Note: These variables are not generated into the Customizer. + +@zindex-navbar: 1000; +@zindex-dropdown: 1000; +@zindex-popover: 1060; +@zindex-tooltip: 1070; +@zindex-navbar-fixed: 1030; +@zindex-modal-background: 1040; +@zindex-modal: 1050; + + +//== Media queries breakpoints +// +//## Define the breakpoints at which your layout will change, adapting to different screen sizes. + +// Extra small screen / phone +//** Deprecated `@screen-xs` as of v3.0.1 +@screen-xs: 480px; +//** Deprecated `@screen-xs-min` as of v3.2.0 +@screen-xs-min: @screen-xs; +//** Deprecated `@screen-phone` as of v3.0.1 +@screen-phone: @screen-xs-min; + +// Small screen / tablet +//** Deprecated `@screen-sm` as of v3.0.1 +@screen-sm: 768px; +@screen-sm-min: @screen-sm; +//** Deprecated `@screen-tablet` as of v3.0.1 +@screen-tablet: @screen-sm-min; + +// Medium screen / desktop +//** Deprecated `@screen-md` as of v3.0.1 +@screen-md: 992px; +@screen-md-min: @screen-md; +//** Deprecated `@screen-desktop` as of v3.0.1 +@screen-desktop: @screen-md-min; + +// Large screen / wide desktop +//** Deprecated `@screen-lg` as of v3.0.1 +@screen-lg: 1200px; +@screen-lg-min: @screen-lg; +//** Deprecated `@screen-lg-desktop` as of v3.0.1 +@screen-lg-desktop: @screen-lg-min; + +// So media queries don't overlap when required, provide a maximum +@screen-xs-max: (@screen-sm-min - 1); +@screen-sm-max: (@screen-md-min - 1); +@screen-md-max: (@screen-lg-min - 1); + + +//== Grid system +// +//## Define your custom responsive grid. + +//** Number of columns in the grid. +@grid-columns: 12; +//** Padding between columns. Gets divided in half for the left and right. +@grid-gutter-width: 30px; +// Navbar collapse +//** Point at which the navbar becomes uncollapsed. +@grid-float-breakpoint: @screen-sm-min; +//** Point at which the navbar begins collapsing. +@grid-float-breakpoint-max: (@grid-float-breakpoint - 1); + + +//== Container sizes +// +//## Define the maximum width of `.container` for different screen sizes. + +// Small screen / tablet +@container-tablet: (720px + @grid-gutter-width); +//** For `@screen-sm-min` and up. +@container-sm: @container-tablet; + +// Medium screen / desktop +@container-desktop: (940px + @grid-gutter-width); +//** For `@screen-md-min` and up. +@container-md: @container-desktop; + +// Large screen / wide desktop +@container-large-desktop: (1140px + @grid-gutter-width); +//** For `@screen-lg-min` and up. +@container-lg: @container-large-desktop; + + +//== Navbar +// +//## + +// Basics of a navbar +@navbar-height: 50px; +@navbar-margin-bottom: @line-height-computed; +@navbar-border-radius: @border-radius-base; +@navbar-padding-horizontal: floor((@grid-gutter-width / 2)); +@navbar-padding-vertical: ((@navbar-height - @line-height-computed) / 2); +@navbar-collapse-max-height: 340px; + +@navbar-default-color: #777; +@navbar-default-bg: #f8f8f8; +@navbar-default-border: darken(@navbar-default-bg, 6.5%); + +// Navbar links +@navbar-default-link-color: #777; +@navbar-default-link-hover-color: #333; +@navbar-default-link-hover-bg: transparent; +@navbar-default-link-active-color: #555; +@navbar-default-link-active-bg: darken(@navbar-default-bg, 6.5%); +@navbar-default-link-disabled-color: #ccc; +@navbar-default-link-disabled-bg: transparent; + +// Navbar brand label +@navbar-default-brand-color: @navbar-default-link-color; +@navbar-default-brand-hover-color: darken(@navbar-default-brand-color, 10%); +@navbar-default-brand-hover-bg: transparent; + +// Navbar toggle +@navbar-default-toggle-hover-bg: #ddd; +@navbar-default-toggle-icon-bar-bg: #888; +@navbar-default-toggle-border-color: #ddd; + + +//=== Inverted navbar +// Reset inverted navbar basics +@navbar-inverse-color: lighten(@gray-light, 15%); +@navbar-inverse-bg: #222; +@navbar-inverse-border: darken(@navbar-inverse-bg, 10%); + +// Inverted navbar links +@navbar-inverse-link-color: lighten(@gray-light, 15%); +@navbar-inverse-link-hover-color: #fff; +@navbar-inverse-link-hover-bg: transparent; +@navbar-inverse-link-active-color: @navbar-inverse-link-hover-color; +@navbar-inverse-link-active-bg: darken(@navbar-inverse-bg, 10%); +@navbar-inverse-link-disabled-color: #444; +@navbar-inverse-link-disabled-bg: transparent; + +// Inverted navbar brand label +@navbar-inverse-brand-color: @navbar-inverse-link-color; +@navbar-inverse-brand-hover-color: #fff; +@navbar-inverse-brand-hover-bg: transparent; + +// Inverted navbar toggle +@navbar-inverse-toggle-hover-bg: #333; +@navbar-inverse-toggle-icon-bar-bg: #fff; +@navbar-inverse-toggle-border-color: #333; + + +//== Navs +// +//## + +//=== Shared nav styles +@nav-link-padding: 10px 15px; +@nav-link-hover-bg: @gray-lighter; + +@nav-disabled-link-color: @gray-light; +@nav-disabled-link-hover-color: @gray-light; + +//== Tabs +@nav-tabs-border-color: #ddd; + +@nav-tabs-link-hover-border-color: @gray-lighter; + +@nav-tabs-active-link-hover-bg: @body-bg; +@nav-tabs-active-link-hover-color: @gray; +@nav-tabs-active-link-hover-border-color: #ddd; + +@nav-tabs-justified-link-border-color: #ddd; +@nav-tabs-justified-active-link-border-color: @body-bg; + +//== Pills +@nav-pills-border-radius: @border-radius-base; +@nav-pills-active-link-hover-bg: @component-active-bg; +@nav-pills-active-link-hover-color: @component-active-color; + + +//== Pagination +// +//## + +@pagination-color: @link-color; +@pagination-bg: #fff; +@pagination-border: #ddd; + +@pagination-hover-color: @link-hover-color; +@pagination-hover-bg: @gray-lighter; +@pagination-hover-border: #ddd; + +@pagination-active-color: #fff; +@pagination-active-bg: @brand-primary; +@pagination-active-border: @brand-primary; + +@pagination-disabled-color: @gray-light; +@pagination-disabled-bg: #fff; +@pagination-disabled-border: #ddd; + + +//== Pager +// +//## + +@pager-bg: @pagination-bg; +@pager-border: @pagination-border; +@pager-border-radius: 15px; + +@pager-hover-bg: @pagination-hover-bg; + +@pager-active-bg: @pagination-active-bg; +@pager-active-color: @pagination-active-color; + +@pager-disabled-color: @pagination-disabled-color; + + +//== Jumbotron +// +//## + +@jumbotron-padding: 30px; +@jumbotron-color: inherit; +@jumbotron-bg: @gray-lighter; +@jumbotron-heading-color: inherit; +@jumbotron-font-size: ceil((@font-size-base * 1.5)); +@jumbotron-heading-font-size: ceil((@font-size-base * 4.5)); + + +//== Form states and alerts +// +//## Define colors for form feedback states and, by default, alerts. + +@state-success-text: #3c763d; +@state-success-bg: #dff0d8; +@state-success-border: darken(spin(@state-success-bg, -10), 5%); + +@state-info-text: #31708f; +@state-info-bg: #d9edf7; +@state-info-border: darken(spin(@state-info-bg, -10), 7%); + +@state-warning-text: #8a6d3b; +@state-warning-bg: #fcf8e3; +@state-warning-border: darken(spin(@state-warning-bg, -10), 5%); + +@state-danger-text: #a94442; +@state-danger-bg: #f2dede; +@state-danger-border: darken(spin(@state-danger-bg, -10), 5%); + + +//== Tooltips +// +//## + +//** Tooltip max width +@tooltip-max-width: 200px; +//** Tooltip text color +@tooltip-color: #fff; +//** Tooltip background color +@tooltip-bg: #000; +@tooltip-opacity: .9; + +//** Tooltip arrow width +@tooltip-arrow-width: 5px; +//** Tooltip arrow color +@tooltip-arrow-color: @tooltip-bg; + + +//== Popovers +// +//## + +//** Popover body background color +@popover-bg: #fff; +//** Popover maximum width +@popover-max-width: 276px; +//** Popover border color +@popover-border-color: rgba(0,0,0,.2); +//** Popover fallback border color +@popover-fallback-border-color: #ccc; + +//** Popover title background color +@popover-title-bg: darken(@popover-bg, 3%); + +//** Popover arrow width +@popover-arrow-width: 10px; +//** Popover arrow color +@popover-arrow-color: @popover-bg; + +//** Popover outer arrow width +@popover-arrow-outer-width: (@popover-arrow-width + 1); +//** Popover outer arrow color +@popover-arrow-outer-color: fadein(@popover-border-color, 5%); +//** Popover outer arrow fallback color +@popover-arrow-outer-fallback-color: darken(@popover-fallback-border-color, 20%); + + +//== Labels +// +//## + +//** Default label background color +@label-default-bg: @gray-light; +//** Primary label background color +@label-primary-bg: @brand-primary; +//** Success label background color +@label-success-bg: @brand-success; +//** Info label background color +@label-info-bg: @brand-info; +//** Warning label background color +@label-warning-bg: @brand-warning; +//** Danger label background color +@label-danger-bg: @brand-danger; + +//** Default label text color +@label-color: #fff; +//** Default text color of a linked label +@label-link-hover-color: #fff; + + +//== Modals +// +//## + +//** Padding applied to the modal body +@modal-inner-padding: 15px; + +//** Padding applied to the modal title +@modal-title-padding: 15px; +//** Modal title line-height +@modal-title-line-height: @line-height-base; + +//** Background color of modal content area +@modal-content-bg: #fff; +//** Modal content border color +@modal-content-border-color: rgba(0,0,0,.2); +//** Modal content border color **for IE8** +@modal-content-fallback-border-color: #999; + +//** Modal backdrop background color +@modal-backdrop-bg: #000; +//** Modal backdrop opacity +@modal-backdrop-opacity: .5; +//** Modal header border color +@modal-header-border-color: #e5e5e5; +//** Modal footer border color +@modal-footer-border-color: @modal-header-border-color; + +@modal-lg: 900px; +@modal-md: 600px; +@modal-sm: 300px; + + +//== Alerts +// +//## Define alert colors, border radius, and padding. + +@alert-padding: 15px; +@alert-border-radius: @border-radius-base; +@alert-link-font-weight: bold; + +@alert-success-bg: @state-success-bg; +@alert-success-text: @state-success-text; +@alert-success-border: @state-success-border; + +@alert-info-bg: @state-info-bg; +@alert-info-text: @state-info-text; +@alert-info-border: @state-info-border; + +@alert-warning-bg: @state-warning-bg; +@alert-warning-text: @state-warning-text; +@alert-warning-border: @state-warning-border; + +@alert-danger-bg: @state-danger-bg; +@alert-danger-text: @state-danger-text; +@alert-danger-border: @state-danger-border; + + +//== Progress bars +// +//## + +//** Background color of the whole progress component +@progress-bg: #f5f5f5; +//** Progress bar text color +@progress-bar-color: #fff; +//** Variable for setting rounded corners on progress bar. +@progress-border-radius: @border-radius-base; + +//** Default progress bar color +@progress-bar-bg: @brand-primary; +//** Success progress bar color +@progress-bar-success-bg: @brand-success; +//** Warning progress bar color +@progress-bar-warning-bg: @brand-warning; +//** Danger progress bar color +@progress-bar-danger-bg: @brand-danger; +//** Info progress bar color +@progress-bar-info-bg: @brand-info; + + +//== List group +// +//## + +//** Background color on `.list-group-item` +@list-group-bg: #fff; +//** `.list-group-item` border color +@list-group-border: #ddd; +//** List group border radius +@list-group-border-radius: @border-radius-base; + +//** Background color of single list items on hover +@list-group-hover-bg: #f5f5f5; +//** Text color of active list items +@list-group-active-color: @component-active-color; +//** Background color of active list items +@list-group-active-bg: @component-active-bg; +//** Border color of active list elements +@list-group-active-border: @list-group-active-bg; +//** Text color for content within active list items +@list-group-active-text-color: lighten(@list-group-active-bg, 40%); + +//** Text color of disabled list items +@list-group-disabled-color: @gray-light; +//** Background color of disabled list items +@list-group-disabled-bg: @gray-lighter; +//** Text color for content within disabled list items +@list-group-disabled-text-color: @list-group-disabled-color; + +@list-group-link-color: #555; +@list-group-link-hover-color: @list-group-link-color; +@list-group-link-heading-color: #333; + + +//== Panels +// +//## + +@panel-bg: #fff; +@panel-body-padding: 15px; +@panel-heading-padding: 10px 15px; +@panel-footer-padding: @panel-heading-padding; +@panel-border-radius: @border-radius-base; + +//** Border color for elements within panels +@panel-inner-border: #ddd; +@panel-footer-bg: #f5f5f5; + +@panel-default-text: @gray-dark; +@panel-default-border: #ddd; +@panel-default-heading-bg: #f5f5f5; + +@panel-primary-text: #fff; +@panel-primary-border: @brand-primary; +@panel-primary-heading-bg: @brand-primary; + +@panel-success-text: @state-success-text; +@panel-success-border: @state-success-border; +@panel-success-heading-bg: @state-success-bg; + +@panel-info-text: @state-info-text; +@panel-info-border: @state-info-border; +@panel-info-heading-bg: @state-info-bg; + +@panel-warning-text: @state-warning-text; +@panel-warning-border: @state-warning-border; +@panel-warning-heading-bg: @state-warning-bg; + +@panel-danger-text: @state-danger-text; +@panel-danger-border: @state-danger-border; +@panel-danger-heading-bg: @state-danger-bg; + + +//== Thumbnails +// +//## + +//** Padding around the thumbnail image +@thumbnail-padding: 4px; +//** Thumbnail background color +@thumbnail-bg: @body-bg; +//** Thumbnail border color +@thumbnail-border: #ddd; +//** Thumbnail border radius +@thumbnail-border-radius: @border-radius-base; + +//** Custom text color for thumbnail captions +@thumbnail-caption-color: @text-color; +//** Padding around the thumbnail caption +@thumbnail-caption-padding: 9px; + + +//== Wells +// +//## + +@well-bg: #f5f5f5; +@well-border: darken(@well-bg, 7%); + + +//== Badges +// +//## + +@badge-color: #fff; +//** Linked badge text color on hover +@badge-link-hover-color: #fff; +@badge-bg: @gray-light; + +//** Badge text color in active nav link +@badge-active-color: @link-color; +//** Badge background color in active nav link +@badge-active-bg: #fff; + +@badge-font-weight: bold; +@badge-line-height: 1; +@badge-border-radius: 10px; + + +//== Breadcrumbs +// +//## + +@breadcrumb-padding-vertical: 8px; +@breadcrumb-padding-horizontal: 15px; +//** Breadcrumb background color +@breadcrumb-bg: #f5f5f5; +//** Breadcrumb text color +@breadcrumb-color: #ccc; +//** Text color of current page in the breadcrumb +@breadcrumb-active-color: @gray-light; +//** Textual separator for between breadcrumb elements +@breadcrumb-separator: "/"; + + +//== Carousel +// +//## + +@carousel-text-shadow: 0 1px 2px rgba(0,0,0,.6); + +@carousel-control-color: #fff; +@carousel-control-width: 15%; +@carousel-control-opacity: .5; +@carousel-control-font-size: 20px; + +@carousel-indicator-active-bg: #fff; +@carousel-indicator-border-color: #fff; + +@carousel-caption-color: #fff; + + +//== Close +// +//## + +@close-font-weight: bold; +@close-color: #000; +@close-text-shadow: 0 1px 0 #fff; + + +//== Code +// +//## + +@code-color: #c7254e; +@code-bg: #f9f2f4; + +@kbd-color: #fff; +@kbd-bg: #333; + +@pre-bg: #f5f5f5; +@pre-color: @gray-dark; +@pre-border-color: #ccc; +@pre-scrollable-max-height: 340px; + + +//== Type +// +//## + +//** Horizontal offset for forms and lists. +@component-offset-horizontal: 180px; +//** Text muted color +@text-muted: @gray-light; +//** Abbreviations and acronyms border color +@abbr-border-color: @gray-light; +//** Headings small color +@headings-small-color: @gray-light; +//** Blockquote small color +@blockquote-small-color: @gray-light; +//** Blockquote font size +@blockquote-font-size: (@font-size-base * 1.25); +//** Blockquote border color +@blockquote-border-color: @gray-lighter; +//** Page header border color +@page-header-border-color: @gray-lighter; +//** Width of horizontal description list titles +@dl-horizontal-offset: @component-offset-horizontal; +//** Horizontal line color. +@hr-border: @gray-lighter; diff --git a/testOauthClient/wwwroot/lib/bootstrap/less/wells.less b/testOauthClient/wwwroot/lib/bootstrap/less/wells.less new file mode 100644 index 00000000..15d072b0 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/less/wells.less @@ -0,0 +1,29 @@ +// +// Wells +// -------------------------------------------------- + + +// Base class +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: @well-bg; + border: 1px solid @well-border; + border-radius: @border-radius-base; + .box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); + blockquote { + border-color: #ddd; + border-color: rgba(0,0,0,.15); + } +} + +// Sizes +.well-lg { + padding: 24px; + border-radius: @border-radius-large; +} +.well-sm { + padding: 9px; + border-radius: @border-radius-small; +} diff --git a/testOauthClient/wwwroot/lib/bootstrap/package.js b/testOauthClient/wwwroot/lib/bootstrap/package.js new file mode 100644 index 00000000..81d42a68 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/package.js @@ -0,0 +1,25 @@ +// package metadata file for Meteor.js + +/* jshint strict:false */ +/* global Package:true */ + +Package.describe({ + name: 'twbs:bootstrap', // http://atmospherejs.com/twbs/bootstrap + summary: 'The most popular front-end framework for developing responsive, mobile first projects on the web.', + version: '3.3.5', + git: 'https://github.com/twbs/bootstrap.git' +}); + +Package.onUse(function (api) { + api.versionsFrom('METEOR@1.0'); + api.use('jquery', 'client'); + api.addFiles([ + 'dist/fonts/glyphicons-halflings-regular.eot', + 'dist/fonts/glyphicons-halflings-regular.svg', + 'dist/fonts/glyphicons-halflings-regular.ttf', + 'dist/fonts/glyphicons-halflings-regular.woff', + 'dist/fonts/glyphicons-halflings-regular.woff2', + 'dist/css/bootstrap.css', + 'dist/js/bootstrap.js' + ], 'client'); +}); diff --git a/testOauthClient/wwwroot/lib/bootstrap/package.json b/testOauthClient/wwwroot/lib/bootstrap/package.json new file mode 100644 index 00000000..380472a0 --- /dev/null +++ b/testOauthClient/wwwroot/lib/bootstrap/package.json @@ -0,0 +1,87 @@ +{ + "name": "bootstrap", + "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", + "version": "3.3.5", + "keywords": [ + "css", + "less", + "mobile-first", + "responsive", + "front-end", + "framework", + "web" + ], + "homepage": "http://getbootstrap.com", + "author": "Twitter, Inc.", + "scripts": { + "test": "grunt test" + }, + "style": "dist/css/bootstrap.css", + "less": "less/bootstrap.less", + "main": "./dist/js/npm", + "repository": { + "type": "git", + "url": "https://github.com/twbs/bootstrap.git" + }, + "bugs": { + "url": "https://github.com/twbs/bootstrap/issues" + }, + "license": "MIT", + "devDependencies": { + "btoa": "~1.1.2", + "glob": "~5.0.5", + "grunt": "~0.4.5", + "grunt-autoprefixer": "~3.0.0", + "grunt-contrib-clean": "~0.6.0", + "grunt-contrib-compress": "~0.13.0", + "grunt-contrib-concat": "~0.5.1", + "grunt-contrib-connect": "~0.10.1", + "grunt-contrib-copy": "~0.8.0", + "grunt-contrib-csslint": "~0.4.0", + "grunt-contrib-cssmin": "~0.12.3", + "grunt-contrib-htmlmin": "~0.4.0", + "grunt-contrib-jade": "~0.14.1", + "grunt-contrib-jshint": "~0.11.2", + "grunt-contrib-less": "~1.0.1", + "grunt-contrib-qunit": "~0.7.0", + "grunt-contrib-uglify": "~0.9.1", + "grunt-contrib-watch": "~0.6.1", + "grunt-csscomb": "~3.0.0", + "grunt-exec": "~0.4.6", + "grunt-html": "~4.0.3", + "grunt-jekyll": "~0.4.2", + "grunt-jscs": "~1.8.0", + "grunt-saucelabs": "~8.6.1", + "grunt-sed": "twbs/grunt-sed#v0.2.0", + "load-grunt-tasks": "~3.2.0", + "markdown-it": "^4.2.1", + "npm-shrinkwrap": "^200.4.0", + "time-grunt": "^1.2.0" + }, + "engines": { + "node": ">=0.10.1" + }, + "files": [ + "dist", + "fonts", + "grunt", + "js/*.js", + "less/**/*.less", + "Gruntfile.js", + "LICENSE" + ], + "jspm": { + "main": "js/bootstrap", + "shim": { + "js/bootstrap": { + "deps": "jquery", + "exports": "$" + } + }, + "files": [ + "css", + "fonts", + "js" + ] + } +} diff --git a/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/.bower.json b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/.bower.json new file mode 100644 index 00000000..10891a60 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/.bower.json @@ -0,0 +1,44 @@ +{ + "name": "jquery-validation-unobtrusive", + "version": "3.2.4", + "homepage": "https://github.com/aspnet/jquery-validation-unobtrusive", + "description": "Add-on to jQuery Validation to enable unobtrusive validation options in data-* attributes.", + "main": [ + "jquery.validate.unobtrusive.js" + ], + "ignore": [ + "**/.*", + "*.json", + "*.md", + "*.txt", + "gulpfile.js" + ], + "keywords": [ + "jquery", + "asp.net", + "mvc", + "validation", + "unobtrusive" + ], + "authors": [ + "Microsoft" + ], + "license": "http://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm", + "repository": { + "type": "git", + "url": "git://github.com/aspnet/jquery-validation-unobtrusive.git" + }, + "dependencies": { + "jquery-validation": ">=1.8", + "jquery": ">=1.8" + }, + "_release": "3.2.4", + "_resolution": { + "type": "version", + "tag": "v3.2.4", + "commit": "13386cd1b5947d8a5d23a12b531ce3960be1eba7" + }, + "_source": "https://github.com/aspnet/jquery-validation-unobtrusive.git", + "_target": "3.2.4", + "_originalSource": "jquery-validation-unobtrusive" +} \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/bower.json b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/bower.json new file mode 100644 index 00000000..677fe1bf --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/bower.json @@ -0,0 +1,35 @@ +{ + "name": "jquery-validation-unobtrusive", + "version": "3.2.4", + "homepage": "https://github.com/aspnet/jquery-validation-unobtrusive", + "description": "Add-on to jQuery Validation to enable unobtrusive validation options in data-* attributes.", + "main": [ + "jquery.validate.unobtrusive.js" + ], + "ignore": [ + "**/.*", + "*.json", + "*.md", + "*.txt", + "gulpfile.js" + ], + "keywords": [ + "jquery", + "asp.net", + "mvc", + "validation", + "unobtrusive" + ], + "authors": [ + "Microsoft" + ], + "license": "http://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm", + "repository": { + "type": "git", + "url": "git://github.com/aspnet/jquery-validation-unobtrusive.git" + }, + "dependencies": { + "jquery-validation": ">=1.8", + "jquery": ">=1.8" + } +} diff --git a/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js new file mode 100644 index 00000000..1b0de124 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js @@ -0,0 +1,416 @@ +/*! +** Unobtrusive validation support library for jQuery and jQuery Validate +** Copyright (C) Microsoft Corporation. All rights reserved. +*/ + +/*jslint white: true, browser: true, onevar: true, undef: true, nomen: true, eqeqeq: true, plusplus: true, bitwise: true, regexp: true, newcap: true, immed: true, strict: false */ +/*global document: false, jQuery: false */ + +(function ($) { + var $jQval = $.validator, + adapters, + data_validation = "unobtrusiveValidation"; + + function setValidationValues(options, ruleName, value) { + options.rules[ruleName] = value; + if (options.message) { + options.messages[ruleName] = options.message; + } + } + + function splitAndTrim(value) { + return value.replace(/^\s+|\s+$/g, "").split(/\s*,\s*/g); + } + + function escapeAttributeValue(value) { + // As mentioned on http://api.jquery.com/category/selectors/ + return value.replace(/([!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~])/g, "\\$1"); + } + + function getModelPrefix(fieldName) { + return fieldName.substr(0, fieldName.lastIndexOf(".") + 1); + } + + function appendModelPrefix(value, prefix) { + if (value.indexOf("*.") === 0) { + value = value.replace("*.", prefix); + } + return value; + } + + function onError(error, inputElement) { // 'this' is the form element + var container = $(this).find("[data-valmsg-for='" + escapeAttributeValue(inputElement[0].name) + "']"), + replaceAttrValue = container.attr("data-valmsg-replace"), + replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) !== false : null; + + container.removeClass("field-validation-valid").addClass("field-validation-error"); + error.data("unobtrusiveContainer", container); + + if (replace) { + container.empty(); + error.removeClass("input-validation-error").appendTo(container); + } + else { + error.hide(); + } + } + + function onErrors(event, validator) { // 'this' is the form element + var container = $(this).find("[data-valmsg-summary=true]"), + list = container.find("ul"); + + if (list && list.length && validator.errorList.length) { + list.empty(); + container.addClass("validation-summary-errors").removeClass("validation-summary-valid"); + + $.each(validator.errorList, function () { + $("
  • ").html(this.message).appendTo(list); + }); + } + } + + function onSuccess(error) { // 'this' is the form element + var container = error.data("unobtrusiveContainer"); + + if (container) { + var replaceAttrValue = container.attr("data-valmsg-replace"), + replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) : null; + + container.addClass("field-validation-valid").removeClass("field-validation-error"); + error.removeData("unobtrusiveContainer"); + + if (replace) { + container.empty(); + } + } + } + + function onReset(event) { // 'this' is the form element + var $form = $(this), + key = '__jquery_unobtrusive_validation_form_reset'; + if ($form.data(key)) { + return; + } + // Set a flag that indicates we're currently resetting the form. + $form.data(key, true); + try { + $form.data("validator").resetForm(); + } finally { + $form.removeData(key); + } + + $form.find(".validation-summary-errors") + .addClass("validation-summary-valid") + .removeClass("validation-summary-errors"); + $form.find(".field-validation-error") + .addClass("field-validation-valid") + .removeClass("field-validation-error") + .removeData("unobtrusiveContainer") + .find(">*") // If we were using valmsg-replace, get the underlying error + .removeData("unobtrusiveContainer"); + } + + function validationInfo(form) { + var $form = $(form), + result = $form.data(data_validation), + onResetProxy = $.proxy(onReset, form), + defaultOptions = $jQval.unobtrusive.options || {}, + execInContext = function (name, args) { + var func = defaultOptions[name]; + func && $.isFunction(func) && func.apply(form, args); + } + + if (!result) { + result = { + options: { // options structure passed to jQuery Validate's validate() method + errorClass: defaultOptions.errorClass || "input-validation-error", + errorElement: defaultOptions.errorElement || "span", + errorPlacement: function () { + onError.apply(form, arguments); + execInContext("errorPlacement", arguments); + }, + invalidHandler: function () { + onErrors.apply(form, arguments); + execInContext("invalidHandler", arguments); + }, + messages: {}, + rules: {}, + success: function () { + onSuccess.apply(form, arguments); + execInContext("success", arguments); + } + }, + attachValidation: function () { + $form + .off("reset." + data_validation, onResetProxy) + .on("reset." + data_validation, onResetProxy) + .validate(this.options); + }, + validate: function () { // a validation function that is called by unobtrusive Ajax + $form.validate(); + return $form.valid(); + } + }; + $form.data(data_validation, result); + } + + return result; + } + + $jQval.unobtrusive = { + adapters: [], + + parseElement: function (element, skipAttach) { + /// + /// Parses a single HTML element for unobtrusive validation attributes. + /// + /// The HTML element to be parsed. + /// [Optional] true to skip attaching the + /// validation to the form. If parsing just this single element, you should specify true. + /// If parsing several elements, you should specify false, and manually attach the validation + /// to the form when you are finished. The default is false. + var $element = $(element), + form = $element.parents("form")[0], + valInfo, rules, messages; + + if (!form) { // Cannot do client-side validation without a form + return; + } + + valInfo = validationInfo(form); + valInfo.options.rules[element.name] = rules = {}; + valInfo.options.messages[element.name] = messages = {}; + + $.each(this.adapters, function () { + var prefix = "data-val-" + this.name, + message = $element.attr(prefix), + paramValues = {}; + + if (message !== undefined) { // Compare against undefined, because an empty message is legal (and falsy) + prefix += "-"; + + $.each(this.params, function () { + paramValues[this] = $element.attr(prefix + this); + }); + + this.adapt({ + element: element, + form: form, + message: message, + params: paramValues, + rules: rules, + messages: messages + }); + } + }); + + $.extend(rules, { "__dummy__": true }); + + if (!skipAttach) { + valInfo.attachValidation(); + } + }, + + parse: function (selector) { + /// + /// Parses all the HTML elements in the specified selector. It looks for input elements decorated + /// with the [data-val=true] attribute value and enables validation according to the data-val-* + /// attribute values. + /// + /// Any valid jQuery selector. + + // $forms includes all forms in selector's DOM hierarchy (parent, children and self) that have at least one + // element with data-val=true + var $selector = $(selector), + $forms = $selector.parents() + .addBack() + .filter("form") + .add($selector.find("form")) + .has("[data-val=true]"); + + $selector.find("[data-val=true]").each(function () { + $jQval.unobtrusive.parseElement(this, true); + }); + + $forms.each(function () { + var info = validationInfo(this); + if (info) { + info.attachValidation(); + } + }); + } + }; + + adapters = $jQval.unobtrusive.adapters; + + adapters.add = function (adapterName, params, fn) { + /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation. + /// The name of the adapter to be added. This matches the name used + /// in the data-val-nnnn HTML attribute (where nnnn is the adapter name). + /// [Optional] An array of parameter names (strings) that will + /// be extracted from the data-val-nnnn-mmmm HTML attributes (where nnnn is the adapter name, and + /// mmmm is the parameter name). + /// The function to call, which adapts the values from the HTML + /// attributes into jQuery Validate rules and/or messages. + /// + if (!fn) { // Called with no params, just a function + fn = params; + params = []; + } + this.push({ name: adapterName, params: params, adapt: fn }); + return this; + }; + + adapters.addBool = function (adapterName, ruleName) { + /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where + /// the jQuery Validate validation rule has no parameter values. + /// The name of the adapter to be added. This matches the name used + /// in the data-val-nnnn HTML attribute (where nnnn is the adapter name). + /// [Optional] The name of the jQuery Validate rule. If not provided, the value + /// of adapterName will be used instead. + /// + return this.add(adapterName, function (options) { + setValidationValues(options, ruleName || adapterName, true); + }); + }; + + adapters.addMinMax = function (adapterName, minRuleName, maxRuleName, minMaxRuleName, minAttribute, maxAttribute) { + /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where + /// the jQuery Validate validation has three potential rules (one for min-only, one for max-only, and + /// one for min-and-max). The HTML parameters are expected to be named -min and -max. + /// The name of the adapter to be added. This matches the name used + /// in the data-val-nnnn HTML attribute (where nnnn is the adapter name). + /// The name of the jQuery Validate rule to be used when you only + /// have a minimum value. + /// The name of the jQuery Validate rule to be used when you only + /// have a maximum value. + /// The name of the jQuery Validate rule to be used when you + /// have both a minimum and maximum value. + /// [Optional] The name of the HTML attribute that + /// contains the minimum value. The default is "min". + /// [Optional] The name of the HTML attribute that + /// contains the maximum value. The default is "max". + /// + return this.add(adapterName, [minAttribute || "min", maxAttribute || "max"], function (options) { + var min = options.params.min, + max = options.params.max; + + if (min && max) { + setValidationValues(options, minMaxRuleName, [min, max]); + } + else if (min) { + setValidationValues(options, minRuleName, min); + } + else if (max) { + setValidationValues(options, maxRuleName, max); + } + }); + }; + + adapters.addSingleVal = function (adapterName, attribute, ruleName) { + /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where + /// the jQuery Validate validation rule has a single value. + /// The name of the adapter to be added. This matches the name used + /// in the data-val-nnnn HTML attribute(where nnnn is the adapter name). + /// [Optional] The name of the HTML attribute that contains the value. + /// The default is "val". + /// [Optional] The name of the jQuery Validate rule. If not provided, the value + /// of adapterName will be used instead. + /// + return this.add(adapterName, [attribute || "val"], function (options) { + setValidationValues(options, ruleName || adapterName, options.params[attribute]); + }); + }; + + $jQval.addMethod("__dummy__", function (value, element, params) { + return true; + }); + + $jQval.addMethod("regex", function (value, element, params) { + var match; + if (this.optional(element)) { + return true; + } + + match = new RegExp(params).exec(value); + return (match && (match.index === 0) && (match[0].length === value.length)); + }); + + $jQval.addMethod("nonalphamin", function (value, element, nonalphamin) { + var match; + if (nonalphamin) { + match = value.match(/\W/g); + match = match && match.length >= nonalphamin; + } + return match; + }); + + if ($jQval.methods.extension) { + adapters.addSingleVal("accept", "mimtype"); + adapters.addSingleVal("extension", "extension"); + } else { + // for backward compatibility, when the 'extension' validation method does not exist, such as with versions + // of JQuery Validation plugin prior to 1.10, we should use the 'accept' method for + // validating the extension, and ignore mime-type validations as they are not supported. + adapters.addSingleVal("extension", "extension", "accept"); + } + + adapters.addSingleVal("regex", "pattern"); + adapters.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url"); + adapters.addMinMax("length", "minlength", "maxlength", "rangelength").addMinMax("range", "min", "max", "range"); + adapters.addMinMax("minlength", "minlength").addMinMax("maxlength", "minlength", "maxlength"); + adapters.add("equalto", ["other"], function (options) { + var prefix = getModelPrefix(options.element.name), + other = options.params.other, + fullOtherName = appendModelPrefix(other, prefix), + element = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(fullOtherName) + "']")[0]; + + setValidationValues(options, "equalTo", element); + }); + adapters.add("required", function (options) { + // jQuery Validate equates "required" with "mandatory" for checkbox elements + if (options.element.tagName.toUpperCase() !== "INPUT" || options.element.type.toUpperCase() !== "CHECKBOX") { + setValidationValues(options, "required", true); + } + }); + adapters.add("remote", ["url", "type", "additionalfields"], function (options) { + var value = { + url: options.params.url, + type: options.params.type || "GET", + data: {} + }, + prefix = getModelPrefix(options.element.name); + + $.each(splitAndTrim(options.params.additionalfields || options.element.name), function (i, fieldName) { + var paramName = appendModelPrefix(fieldName, prefix); + value.data[paramName] = function () { + var field = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(paramName) + "']"); + // For checkboxes and radio buttons, only pick up values from checked fields. + if (field.is(":checkbox")) { + return field.filter(":checked").val() || field.filter(":hidden").val() || ''; + } + else if (field.is(":radio")) { + return field.filter(":checked").val() || ''; + } + return field.val(); + }; + }); + + setValidationValues(options, "remote", value); + }); + adapters.add("password", ["min", "nonalphamin", "regex"], function (options) { + if (options.params.min) { + setValidationValues(options, "minlength", options.params.min); + } + if (options.params.nonalphamin) { + setValidationValues(options, "nonalphamin", options.params.nonalphamin); + } + if (options.params.regex) { + setValidationValues(options, "regex", options.params.regex); + } + }); + + $(function () { + $jQval.unobtrusive.parse(document); + }); +}(jQuery)); \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js new file mode 100644 index 00000000..be9a38a4 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js @@ -0,0 +1,5 @@ +/* +** Unobtrusive validation support library for jQuery and jQuery Validate +** Copyright (C) Microsoft Corporation. All rights reserved. +*/ +!function(a){function e(a,e,n){a.rules[e]=n,a.message&&(a.messages[e]=a.message)}function n(a){return a.replace(/^\s+|\s+$/g,"").split(/\s*,\s*/g)}function t(a){return a.replace(/([!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~])/g,"\\$1")}function r(a){return a.substr(0,a.lastIndexOf(".")+1)}function i(a,e){return 0===a.indexOf("*.")&&(a=a.replace("*.",e)),a}function o(e,n){var r=a(this).find("[data-valmsg-for='"+t(n[0].name)+"']"),i=r.attr("data-valmsg-replace"),o=i?a.parseJSON(i)!==!1:null;r.removeClass("field-validation-valid").addClass("field-validation-error"),e.data("unobtrusiveContainer",r),o?(r.empty(),e.removeClass("input-validation-error").appendTo(r)):e.hide()}function d(e,n){var t=a(this).find("[data-valmsg-summary=true]"),r=t.find("ul");r&&r.length&&n.errorList.length&&(r.empty(),t.addClass("validation-summary-errors").removeClass("validation-summary-valid"),a.each(n.errorList,function(){a("
  • ").html(this.message).appendTo(r)}))}function s(e){var n=e.data("unobtrusiveContainer");if(n){var t=n.attr("data-valmsg-replace"),r=t?a.parseJSON(t):null;n.addClass("field-validation-valid").removeClass("field-validation-error"),e.removeData("unobtrusiveContainer"),r&&n.empty()}}function l(e){var n=a(this),t="__jquery_unobtrusive_validation_form_reset";if(!n.data(t)){n.data(t,!0);try{n.data("validator").resetForm()}finally{n.removeData(t)}n.find(".validation-summary-errors").addClass("validation-summary-valid").removeClass("validation-summary-errors"),n.find(".field-validation-error").addClass("field-validation-valid").removeClass("field-validation-error").removeData("unobtrusiveContainer").find(">*").removeData("unobtrusiveContainer")}}function m(e){var n=a(e),t=n.data(v),r=a.proxy(l,e),i=p.unobtrusive.options||{},m=function(n,t){var r=i[n];r&&a.isFunction(r)&&r.apply(e,t)};return t||(t={options:{errorClass:i.errorClass||"input-validation-error",errorElement:i.errorElement||"span",errorPlacement:function(){o.apply(e,arguments),m("errorPlacement",arguments)},invalidHandler:function(){d.apply(e,arguments),m("invalidHandler",arguments)},messages:{},rules:{},success:function(){s.apply(e,arguments),m("success",arguments)}},attachValidation:function(){n.off("reset."+v,r).on("reset."+v,r).validate(this.options)},validate:function(){return n.validate(),n.valid()}},n.data(v,t)),t}var u,p=a.validator,v="unobtrusiveValidation";p.unobtrusive={adapters:[],parseElement:function(e,n){var t,r,i,o=a(e),d=o.parents("form")[0];d&&(t=m(d),t.options.rules[e.name]=r={},t.options.messages[e.name]=i={},a.each(this.adapters,function(){var n="data-val-"+this.name,t=o.attr(n),s={};void 0!==t&&(n+="-",a.each(this.params,function(){s[this]=o.attr(n+this)}),this.adapt({element:e,form:d,message:t,params:s,rules:r,messages:i}))}),a.extend(r,{__dummy__:!0}),n||t.attachValidation())},parse:function(e){var n=a(e),t=n.parents().addBack().filter("form").add(n.find("form")).has("[data-val=true]");n.find("[data-val=true]").each(function(){p.unobtrusive.parseElement(this,!0)}),t.each(function(){var a=m(this);a&&a.attachValidation()})}},u=p.unobtrusive.adapters,u.add=function(a,e,n){return n||(n=e,e=[]),this.push({name:a,params:e,adapt:n}),this},u.addBool=function(a,n){return this.add(a,function(t){e(t,n||a,!0)})},u.addMinMax=function(a,n,t,r,i,o){return this.add(a,[i||"min",o||"max"],function(a){var i=a.params.min,o=a.params.max;i&&o?e(a,r,[i,o]):i?e(a,n,i):o&&e(a,t,o)})},u.addSingleVal=function(a,n,t){return this.add(a,[n||"val"],function(r){e(r,t||a,r.params[n])})},p.addMethod("__dummy__",function(a,e,n){return!0}),p.addMethod("regex",function(a,e,n){var t;return this.optional(e)?!0:(t=new RegExp(n).exec(a),t&&0===t.index&&t[0].length===a.length)}),p.addMethod("nonalphamin",function(a,e,n){var t;return n&&(t=a.match(/\W/g),t=t&&t.length>=n),t}),p.methods.extension?(u.addSingleVal("accept","mimtype"),u.addSingleVal("extension","extension")):u.addSingleVal("extension","extension","accept"),u.addSingleVal("regex","pattern"),u.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url"),u.addMinMax("length","minlength","maxlength","rangelength").addMinMax("range","min","max","range"),u.addMinMax("minlength","minlength").addMinMax("maxlength","minlength","maxlength"),u.add("equalto",["other"],function(n){var o=r(n.element.name),d=n.params.other,s=i(d,o),l=a(n.form).find(":input").filter("[name='"+t(s)+"']")[0];e(n,"equalTo",l)}),u.add("required",function(a){("INPUT"!==a.element.tagName.toUpperCase()||"CHECKBOX"!==a.element.type.toUpperCase())&&e(a,"required",!0)}),u.add("remote",["url","type","additionalfields"],function(o){var d={url:o.params.url,type:o.params.type||"GET",data:{}},s=r(o.element.name);a.each(n(o.params.additionalfields||o.element.name),function(e,n){var r=i(n,s);d.data[r]=function(){var e=a(o.form).find(":input").filter("[name='"+t(r)+"']");return e.is(":checkbox")?e.filter(":checked").val()||e.filter(":hidden").val()||"":e.is(":radio")?e.filter(":checked").val()||"":e.val()}}),e(o,"remote",d)}),u.add("password",["min","nonalphamin","regex"],function(a){a.params.min&&e(a,"minlength",a.params.min),a.params.nonalphamin&&e(a,"nonalphamin",a.params.nonalphamin),a.params.regex&&e(a,"regex",a.params.regex)}),a(function(){p.unobtrusive.parse(document)})}(jQuery); \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/jquery-validation/.bower.json b/testOauthClient/wwwroot/lib/jquery-validation/.bower.json new file mode 100644 index 00000000..08d8c5c9 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/.bower.json @@ -0,0 +1,40 @@ +{ + "name": "jquery-validation", + "homepage": "http://jqueryvalidation.org/", + "repository": { + "type": "git", + "url": "git://github.com/jzaefferer/jquery-validation.git" + }, + "authors": [ + "Jörn Zaefferer " + ], + "description": "Form validation made easy", + "main": "dist/jquery.validate.js", + "keywords": [ + "forms", + "validation", + "validate" + ], + "license": "MIT", + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "test", + "demo", + "lib" + ], + "dependencies": { + "jquery": ">= 1.7.2" + }, + "version": "1.14.0", + "_release": "1.14.0", + "_resolution": { + "type": "version", + "tag": "1.14.0", + "commit": "c1343fb9823392aa9acbe1c3ffd337b8c92fed48" + }, + "_source": "https://github.com/jzaefferer/jquery-validation.git", + "_target": "1.14.0", + "_originalSource": "jquery-validation" +} \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/jquery-validation/CONTRIBUTING.md b/testOauthClient/wwwroot/lib/jquery-validation/CONTRIBUTING.md new file mode 100644 index 00000000..7ff6c61e --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/CONTRIBUTING.md @@ -0,0 +1,53 @@ +# Contributing to the jQuery Validation Plugin + +## Reporting an Issue + +1. Make sure the problem you're addressing is reproducible. +2. Use http://jsbin.com or http://jsfiddle.net to provide a test page. +3. Indicate what browsers the issue can be reproduced in. **Note: IE Compatibilty mode issues will not be addressed. Make sure you test in a real browser!** +4. What version of the plug-in is the issue reproducible in. Is it reproducible after updating to the latest version. + +Documentation issues are also tracked at the [jQuery Validation](https://github.com/jzaefferer/jquery-validation/issues) issue tracker. +Pull Requests to improve the docs are welcome at the [jQuery Validation docs](https://github.com/jzaefferer/validation-content) repository, though. + +**IMPORTANT NOTE ABOUT EMAIL VALIDATION**. As of version 1.12.0 this plugin is using the same regular expression that the [HTML5 specification suggests for browsers to use](https://html.spec.whatwg.org/multipage/forms.html#valid-e-mail-address). We will follow their lead and use the same check. If you think the specification is wrong, please report the issue to them. If you have different requirements, consider [using a custom method](http://jqueryvalidation.org/jQuery.validator.addMethod/). + +## Contributing code + +Thanks for contributing! Here's a few guidelines to help your contribution get landed. + +1. Make sure the problem you're addressing is reproducible. Use jsbin.com or jsfiddle.net to provide a test page. +2. Follow the [jQuery style guide](http://contribute.jquery.com/style-guides/js) +3. Add or update unit tests along with your patch. Run the unit tests in at least one browser (see below). +4. Run `grunt` (see below) to check for linting and a few other issues. +5. Describe the change in your commit message and reference the ticket, like this: "Demos: Fixed delegate bug for dynamic-totals demo. Fixes #51". If you're adding a new localization file, use something like this: "Localization: Added croatian (HR) localization" + +## Build setup + +1. Install [NodeJS](http://nodejs.org). +2. Install the Grunt CLI To install by running `npm install -g grunt-cli`. More details are available on their website http://gruntjs.com/getting-started. +3. Install the NPM dependencies by running `npm install`. +4. The build can now be called by running `grunt`. + +## Creating a new Additional Method + +If you've wrote custom methods that you'd like to contribute to additional-methods.js: + +1. Create a branch +2. Add the method as a new file in `src/additional` +3. (Optional) Add translations to `src/localization` +4. Send a pull request to the master branch. + +## Unit Tests + +To run unit tests, just open `test/index.html` within your browser. Make sure you ran `npm install` before so all required dependencies are available. +Start with one browser while developing the fix, then run against others before committing. Usually latest Chrome, Firefox, Safari and Opera and a few IEs. + +## Documentation + +Please report documentation issues at the [jQuery Validation](https://github.com/jzaefferer/jquery-validation/issues) issue tracker. +In case your pull request implements or changes public API it would be a plus you would provide a pull request against the [jQuery Validation docs](https://github.com/jzaefferer/validation-content) repository. + +## Linting + +To run JSHint and other tools, use `grunt`. diff --git a/testOauthClient/wwwroot/lib/jquery-validation/Gruntfile.js b/testOauthClient/wwwroot/lib/jquery-validation/Gruntfile.js new file mode 100644 index 00000000..f6e42d02 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/Gruntfile.js @@ -0,0 +1,186 @@ +/*jshint node:true*/ +module.exports = function(grunt) { + +"use strict"; + +var banner, + umdStart, + umdMiddle, + umdEnd, + umdStandardDefine, + umdAdditionalDefine, + umdLocalizationDefine; + +banner = "/*!\n" + + " * jQuery Validation Plugin v<%= pkg.version %>\n" + + " *\n" + + " * <%= pkg.homepage %>\n" + + " *\n" + + " * Copyright (c) <%= grunt.template.today('yyyy') %> <%= pkg.author.name %>\n" + + " * Released under the <%= _.pluck(pkg.licenses, 'type').join(', ') %> license\n" + + " */\n"; + +// define UMD wrapper variables + +umdStart = "(function( factory ) {\n" + + "\tif ( typeof define === \"function\" && define.amd ) {\n"; + +umdMiddle = "\t} else {\n" + + "\t\tfactory( jQuery );\n" + + "\t}\n" + + "}(function( $ ) {\n\n"; + +umdEnd = "\n}));"; + +umdStandardDefine = "\t\tdefine( [\"jquery\"], factory );\n"; +umdAdditionalDefine = "\t\tdefine( [\"jquery\", \"./jquery.validate\"], factory );\n"; +umdLocalizationDefine = "\t\tdefine( [\"jquery\", \"../jquery.validate\"], factory );\n"; + +grunt.initConfig({ + pkg: grunt.file.readJSON("package.json"), + concat: { + // used to copy to dist folder + dist: { + options: { + banner: banner + + umdStart + + umdStandardDefine + + umdMiddle, + footer: umdEnd + }, + files: { + "dist/jquery.validate.js": [ "src/core.js", "src/*.js" ] + } + }, + extra: { + options: { + banner: banner + + umdStart + + umdAdditionalDefine + + umdMiddle, + footer: umdEnd + }, + files: { + "dist/additional-methods.js": [ "src/additional/additional.js", "src/additional/*.js" ] + } + } + }, + uglify: { + options: { + preserveComments: false, + banner: "/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - " + + "<%= grunt.template.today('m/d/yyyy') %>\n" + + " * <%= pkg.homepage %>\n" + + " * Copyright (c) <%= grunt.template.today('yyyy') %> <%= pkg.author.name %>;" + + " Licensed <%= _.pluck(pkg.licenses, 'type').join(', ') %> */\n" + }, + dist: { + files: { + "dist/additional-methods.min.js": "dist/additional-methods.js", + "dist/jquery.validate.min.js": "dist/jquery.validate.js" + } + }, + all: { + expand: true, + cwd: "dist/localization", + src: "**/*.js", + dest: "dist/localization", + ext: ".min.js" + } + }, + compress: { + dist: { + options: { + mode: "zip", + level: 1, + archive: "dist/<%= pkg.name %>-<%= pkg.version %>.zip", + pretty: true + }, + src: [ + "changelog.txt", + "demo/**/*.*", + "dist/**/*.js", + "Gruntfile.js", + "lib/**/*.*", + "package.json", + "README.md", + "src/**/*.*", + "test/**/*.*" + ] + } + }, + qunit: { + files: "test/index.html" + }, + jshint: { + options: { + jshintrc: true + }, + core: { + src: "src/**/*.js" + }, + test: { + src: "test/*.js" + }, + grunt: { + src: "Gruntfile.js" + } + }, + watch: { + options: { + atBegin: true + }, + src: { + files: "<%= jshint.core.src %>", + tasks: [ + "concat" + ] + } + }, + jscs: { + all: [ "<%= jshint.core.src %>", "<%= jshint.test.src %>", "<%= jshint.grunt.src %>" ] + }, + copy: { + dist: { + options: { + // append UMD wrapper + process: function( content ) { + return umdStart + umdLocalizationDefine + umdMiddle + content + umdEnd; + } + }, + src: "src/localization/*", + dest: "dist/localization", + expand: true, + flatten: true, + filter: "isFile" + } + }, + replace: { + dist: { + src: "dist/**/*.min.js", + overwrite: true, + replacements: [ + { + from: "./jquery.validate", + to: "./jquery.validate.min" + } + ] + } + } +}); + +grunt.loadNpmTasks("grunt-contrib-jshint"); +grunt.loadNpmTasks("grunt-contrib-qunit"); +grunt.loadNpmTasks("grunt-contrib-uglify"); +grunt.loadNpmTasks("grunt-contrib-concat"); +grunt.loadNpmTasks("grunt-contrib-compress"); +grunt.loadNpmTasks("grunt-contrib-watch"); +grunt.loadNpmTasks("grunt-jscs"); +grunt.loadNpmTasks("grunt-contrib-copy"); +grunt.loadNpmTasks("grunt-text-replace"); + +grunt.registerTask("default", [ "concat", "copy", "jscs", "jshint", "qunit" ]); +grunt.registerTask("release", [ "default", "uglify", "replace", "compress" ]); +grunt.registerTask("start", [ "concat", "watch" ]); + +}; diff --git a/testOauthClient/wwwroot/lib/jquery-validation/LICENSE.md b/testOauthClient/wwwroot/lib/jquery-validation/LICENSE.md new file mode 100644 index 00000000..dc377cc0 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/LICENSE.md @@ -0,0 +1,22 @@ +The MIT License (MIT) +===================== + +Copyright Jörn Zaefferer + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/testOauthClient/wwwroot/lib/jquery-validation/README.md b/testOauthClient/wwwroot/lib/jquery-validation/README.md new file mode 100644 index 00000000..4b9a33e8 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/README.md @@ -0,0 +1,65 @@ +[jQuery Validation Plugin](http://jqueryvalidation.org/) - Form validation made easy +================================ + +[![Build Status](https://secure.travis-ci.org/jzaefferer/jquery-validation.png)](http://travis-ci.org/jzaefferer/jquery-validation) +[![devDependency Status](https://david-dm.org/jzaefferer/jquery-validation/dev-status.png?theme=shields.io)](https://david-dm.org/jzaefferer/jquery-validation#info=devDependencies) + +The jQuery Validation Plugin provides drop-in validation for your existing forms, while making all kinds of customizations to fit your application really easy. + +## [Help the project](http://pledgie.com/campaigns/18159) + +[![Help the project](http://www.pledgie.com/campaigns/18159.png?skin_name=chrome)](http://pledgie.com/campaigns/18159) + +This project is looking for help! [You can donate to the ongoing pledgie campaign](http://pledgie.com/campaigns/18159) +and help spread the word. If you've used the plugin, or plan to use, consider a donation - any amount will help. + +You can find the plan for how to spend the money on the [pledgie page](http://pledgie.com/campaigns/18159). + +## Getting Started + +### Downloading the prebuilt files + +Prebuilt files can be downloaded from http://jqueryvalidation.org/ + +### Downloading the latest changes + +The unreleased development files can be obtained by: + + 1. [Downloading](https://github.com/jzaefferer/jquery-validation/archive/master.zip) or Forking this repository + 2. [Setup the build](CONTRIBUTING.md#build-setup) + 3. Run `grunt` to create the built files in the "dist" directory + +### Including it on your page + +Include jQuery and the plugin on a page. Then select a form to validate and call the `validate` method. + +```html +
    + +
    + + + +``` + +Alternatively include jQuery and the plugin via requirejs in your module. + +```js +define(["jquery", "jquery.validate"], function( $ ) { + $("form").validate(); +}); +``` + +For more information on how to setup a rules and customizations, [check the documentation](http://jqueryvalidation.org/documentation/). + +## Reporting issues and contributing code + +See the [Contributing Guidelines](CONTRIBUTING.md) for details. + +**IMPORTANT NOTE ABOUT EMAIL VALIDATION**. As of version 1.12.0 this plugin is using the same regular expression that the [HTML5 specification suggests for browsers to use](https://html.spec.whatwg.org/multipage/forms.html#valid-e-mail-address). We will follow their lead and use the same check. If you think the specification is wrong, please report the issue to them. If you have different requirements, consider [using a custom method](http://jqueryvalidation.org/jQuery.validator.addMethod/). + +## License +Copyright © Jörn Zaefferer
    +Licensed under the MIT license. diff --git a/testOauthClient/wwwroot/lib/jquery-validation/bower.json b/testOauthClient/wwwroot/lib/jquery-validation/bower.json new file mode 100644 index 00000000..4b26ae8a --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/bower.json @@ -0,0 +1,31 @@ +{ + "name": "jquery-validation", + "homepage": "http://jqueryvalidation.org/", + "repository": { + "type": "git", + "url": "git://github.com/jzaefferer/jquery-validation.git" + }, + "authors": [ + "Jörn Zaefferer " + ], + "description": "Form validation made easy", + "main": "dist/jquery.validate.js", + "keywords": [ + "forms", + "validation", + "validate" + ], + "license": "MIT", + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "test", + "demo", + "lib" + ], + "dependencies": { + "jquery": ">= 1.7.2" + }, + "version": "1.14.0" +} diff --git a/testOauthClient/wwwroot/lib/jquery-validation/changelog.md b/testOauthClient/wwwroot/lib/jquery-validation/changelog.md new file mode 100644 index 00000000..f6a1af3b --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/changelog.md @@ -0,0 +1,534 @@ +1.14.0 / 2015-06-30 +================== + +## Core + * Remove unused removeAttrs method + * Replace regex for url method + * Remove bad url param in $.ajax, overwritten by $.extend + * Properly handle nested cancel submit button + * Fix indent + * Refactor attributeRules and dataRules to share noramlizer + * dataRules method to convert value to number for number inputs + * Update url method to allow for protocol-relative URLs + * Remove deprecated $.format placeholder + * Use jQuery 1.7+ on/off, add destroy method + * IE8 compatibility changed .indexOf to $.inArray + * Cast NaN value attributes to undefined for Opera Mini + * Stop trimming value inside required method + * Use :disabled selector to match disabled elements + * Exclude some keyboard keys to prevent revalidating the field + * Do not search the whole DOM for radio/checkbox elements + * Throw better errors for bad rule methods + * Fixed number validation error + * Fix reference to whatwg spec + * Focus invalid element when validating a custom set of inputs + * Reset element styles when using custom highlight methods + * Escape dollar sign in error id + * Revert "Ignore readonly as well as disabled fields." + * Update link in comment for Luhn algorithm + +## Additionals + * Update dateITA to address timezone issue + * Fix extension method to only method period + * Fix accept method to match period only + * Update time method to allow single digit hour + * Drop bad test for notEqualTo method + * Add notEqualTo method + * Use correct jQuery reference via `$` + * Remove useless regex check in iban method + * Brazilian CPF number + +## Localization + * Update messages_tr.js + * Update messages_sr_lat.js + * Adding Perú Spanish (ES PE) + * Adding Georgian (ქართული, ge) + * Fixed typo in catalan translation + * Improve Finnish (fi) translation + * Add armenian (hy_AM) locale + * Extend italian (it) translation with currency method + * Add bn_BD locale + * Update zh locale + * Remove full stop at the end of italian messages + +1.13.1 / 2014-10-14 +================== + +## Core + * Allow 0 as value for autoCreateRanges + * Apply ignore setting to all validationTargetFor elements + * Don't trim value in min/max/rangelength methods + * Escape id/name before using it as a selector in errorsFor + * Explicit default for focusCleanup option + * Fix incorrect regexp for describedby matcher + * Ignore readonly as well as disabled fields + * Improve id escaping, store escaped id in describedby + * Use return value of submitHandler to allow or prevent form submit + +## Additionals + * Add postalcodeBR method + * Fix pattern method when parameter is a string + + +1.13.0 / 2014-07-01 +================== + +## All +* Add plugin UMD wrapper + +## Core +* Respect non-error aria-describedby and empty hidden errors +* Improve dateISO RegExp +* Added radio/checkbox to delegate click-event +* Use aria-describedby for non-label elements +* Register focusin, focusout and keyup also on radio/checkbox +* Fix normalization for rangelength attribute value +* Update elementValue method to deal with type="number" fields +* Use charAt instead of array notation on strings, to support IE8(?) + +## Localization +* Fix sk translation of rangelength method +* Add Finnish methods +* Fixed GL number validation message +* Fixed ES number method validation message +* Added galician (GL) +* Fixed French messages for min and max methods + +## Additionals +* Add statesUS method +* Fix dateITA method to deal with DST bug +* Add persian date method +* Add postalCodeCA method +* Add postalcodeIT method + +1.12.0 / 2014-04-01 +================== + +* Add ARIA testing ([3d5658e](https://github.com/jzaefferer/jquery-validation/commit/3d5658e9e4825fab27198c256beed86f0bd12577)) +* Add es-AR localization messages. ([7b30beb](https://github.com/jzaefferer/jquery-validation/commit/7b30beb8ebd218c38a55d26a63d529e16035c7a2)) +* Add missing dots to 'es' and 'es_AR' messages. ([a2a653c](https://github.com/jzaefferer/jquery-validation/commit/a2a653cb68926ca034b4b09d742d275db934d040)) +* Added Indonesian (ID) localization ([1d348bd](https://github.com/jzaefferer/jquery-validation/commit/1d348bdcb65807c71da8d0bfc13a97663631cd3a)) +* Added NIF, NIE and CIF Spanish documents numbers validation ([#830](https://github.com/jzaefferer/jquery-validation/issues/830), [317c20f](https://github.com/jzaefferer/jquery-validation/commit/317c20fa9bb772770bb9b70d46c7081d7cfc6545)) +* Added the current form to the context of the remote ajax request ([0a18ae6](https://github.com/jzaefferer/jquery-validation/commit/0a18ae65b9b6d877e3d15650a5c2617a9d2b11d5)) +* Additionals: Update IBAN method, trim trailing whitespaces ([#970](https://github.com/jzaefferer/jquery-validation/issues/970), [347b04a](https://github.com/jzaefferer/jquery-validation/commit/347b04a7d4e798227405246a5de3fc57451d52e1)) +* BIC method: Improve RegEx, {1} is always redundant. Closes gh-744 ([5cad6b4](https://github.com/jzaefferer/jquery-validation/commit/5cad6b493575e8a9a82470d17e0900c881130873)) +* Bower: Add Bower.json for package registration ([e86ccb0](https://github.com/jzaefferer/jquery-validation/commit/e86ccb06e301613172d472cf15dd4011ff71b398)) +* Changes dollar references to 'jQuery', for compability with jQuery.noConflict. Closes gh-754 ([2049afe](https://github.com/jzaefferer/jquery-validation/commit/2049afe46c1be7b3b89b1d9f0690f5bebf4fbf68)) +* Core: Add "method" field to error list entry ([89a15c7](https://github.com/jzaefferer/jquery-validation/commit/89a15c7a4b17fa2caaf4ff817f09b04c094c3884)) +* Core: Added support for generic messages via data-msg attribute ([5bebaa5](https://github.com/jzaefferer/jquery-validation/commit/5bebaa5c55c73f457c0e0181ec4e3b0c409e2a9d)) +* Core: Allow attributes to have a value of zero (eg min='0') ([#854](https://github.com/jzaefferer/jquery-validation/issues/854), [9dc0d1d](https://github.com/jzaefferer/jquery-validation/commit/9dc0d1dd946b2c6178991fb16df0223c76162579)) +* Core: Disable deprecated $.format ([#755](https://github.com/jzaefferer/jquery-validation/issues/755), [bf3b350](https://github.com/jzaefferer/jquery-validation/commit/bf3b3509140ea8ab5d83d3ec58fd9f1d7822efc5)) +* Core: Fix support for multiple error classes ([c1f0baf](https://github.com/jzaefferer/jquery-validation/commit/c1f0baf36c21ca175bbc05fb9345e5b44b094821)) +* Core: Ignore events on ignored elements ([#700](https://github.com/jzaefferer/jquery-validation/issues/700), [a864211](https://github.com/jzaefferer/jquery-validation/commit/a86421131ea69786ee9e0d23a68a54a7658ccdbf)) +* Core: Improve elementValue method ([6c041ed](https://github.com/jzaefferer/jquery-validation/commit/6c041edd21af1425d12d06cdd1e6e32a78263e82)) +* Core: Make element() handle ignored elements properly. ([3f464a8](https://github.com/jzaefferer/jquery-validation/commit/3f464a8da49dbb0e4881ada04165668e4a63cecb)) +* Core: Switch dataRules parsing to W3C HTML5 spec style ([460fd22](https://github.com/jzaefferer/jquery-validation/commit/460fd22b6c84a74c825ce1fa860c0a9da20b56bb)) +* Core: Trigger success on optional but have other successful validators ([#851](https://github.com/jzaefferer/jquery-validation/issues/851), [f93e1de](https://github.com/jzaefferer/jquery-validation/commit/f93e1deb48ec8b3a8a54e946a37db2de42d3aa2a)) +* Core: Use plain element instead of un-wrapping the element again ([03cd4c9](https://github.com/jzaefferer/jquery-validation/commit/03cd4c93069674db5415a0bf174a5870da47e5d2)) +* Core: make sure remote is executed last ([#711](https://github.com/jzaefferer/jquery-validation/issues/711), [ad91b6f](https://github.com/jzaefferer/jquery-validation/commit/ad91b6f388b7fdfb03b74e78554cbab9fd8fca6f)) +* Demo: Use correct option in multipart demo. ([#1025](https://github.com/jzaefferer/jquery-validation/issues/1025), [070edc7](https://github.com/jzaefferer/jquery-validation/commit/070edc7be4de564cb74cfa9ee4e3f40b6b70b76f)) +* Fix $/jQuery usage in additional methods. Fixes #839 ([#839](https://github.com/jzaefferer/jquery-validation/issues/839), [59bc899](https://github.com/jzaefferer/jquery-validation/commit/59bc899e4586255a4251903712e813c21d25b3e1)) +* Improve Chinese translations ([1a0bfe3](https://github.com/jzaefferer/jquery-validation/commit/1a0bfe32b16f8912ddb57388882aa880fab04ffe)) +* Initial ARIA-Required implementation ([bf3cfb2](https://github.com/jzaefferer/jquery-validation/commit/bf3cfb234ede2891d3f7e19df02894797dd7ba5e)) +* Localization: change accept values to extension. Fixes #771, closes gh-793. ([#771](https://github.com/jzaefferer/jquery-validation/issues/771), [12edec6](https://github.com/jzaefferer/jquery-validation/commit/12edec66eb30dc7e86756222d455d49b34016f65)) +* Messages: Add icelandic localization ([dc88575](https://github.com/jzaefferer/jquery-validation/commit/dc885753c8872044b0eaa1713cecd94c19d4c73d)) +* Messages: Add missing dots to 'bg', 'fr' and 'sr' messages. ([adbc636](https://github.com/jzaefferer/jquery-validation/commit/adbc6361c377bf6b74c35df9782479b1115fbad7)) +* Messages: Create messages_sr_lat.js ([f2f9007](https://github.com/jzaefferer/jquery-validation/commit/f2f90076518014d98495c2a9afb9a35d45d184e6)) +* Messages: Create messages_tj.js ([de830b3](https://github.com/jzaefferer/jquery-validation/commit/de830b3fd8689a7384656c17565ee92c2878d8a5)) +* Messages: Fix sr_lat translation, add missing space ([880ba1c](https://github.com/jzaefferer/jquery-validation/commit/880ba1ca545903a41d8c5332fc4038a7e9a580bd)) +* Messages: Update messages_sr.js, fix missing space ([10313f4](https://github.com/jzaefferer/jquery-validation/commit/10313f418c18ea75f385248468c2d3600f136cfb)) +* Methods: Add additional method for currency ([1a981b4](https://github.com/jzaefferer/jquery-validation/commit/1a981b440346620964c87ebdd0fa03246348390e)) +* Methods: Adding Smart Quotes to stripHTML's punctuation removal ([aa0d624](https://github.com/jzaefferer/jquery-validation/commit/aa0d6241c3ea04663edc1e45ed6e6134630bdd2f)) +* Methods: Fix dateITA method, avoiding summertime errors ([279b932](https://github.com/jzaefferer/jquery-validation/commit/279b932c1267b7238e6652880b7846ba3bbd2084)) +* Methods: Localized methods for chilean culture (es-CL) ([cf36b93](https://github.com/jzaefferer/jquery-validation/commit/cf36b933499e435196d951401221d533a4811810)) +* Methods: Update email to use HTML5 regex, remove email2 method ([#828](https://github.com/jzaefferer/jquery-validation/issues/828), [dd162ae](https://github.com/jzaefferer/jquery-validation/commit/dd162ae360639f73edd2dcf7a256710b2f5a4e64)) +* Pattern method: Remove delimiters, since HTML5 implementations don't include those either. ([37992c1](https://github.com/jzaefferer/jquery-validation/commit/37992c1c9e2e0be8b315ccccc2acb74863439d3e)) +* Restricting credit card validator to include length check. Closes gh-772 ([f5f47c5](https://github.com/jzaefferer/jquery-validation/commit/f5f47c5c661da5b0c0c6d59d169e82230928a804)) +* Update messages_ko.js - closes gh-715 ([5da3085](https://github.com/jzaefferer/jquery-validation/commit/5da3085ff02e0e6ecc955a8bfc3bb9a8d220581b)) +* Update messages_pt_BR.js. Closes gh-782 ([4bf813b](https://github.com/jzaefferer/jquery-validation/commit/4bf813b751ce34fac3c04eaa2e80f75da3461124)) +* Update phonesUK and mobileUK to accept new prefixes. Closes gh-750 ([d447b41](https://github.com/jzaefferer/jquery-validation/commit/d447b41b830dee984be21d8281ec7b87a852001d)) +* Verify nine-digit zip codes. Closes gh-726 ([165005d](https://github.com/jzaefferer/jquery-validation/commit/165005d4b5780e22d13d13189d107940c622a76f)) +* phoneUS: Add N11 exclusions. Closes gh-861 ([519bbc6](https://github.com/jzaefferer/jquery-validation/commit/519bbc656bcb26e8aae5166d7b2e000014e0d12a)) +* resetForm should clear any aria-invalid values ([4f8a631](https://github.com/jzaefferer/jquery-validation/commit/4f8a631cbe84f496ec66260ada52db2aa0bb3733)) +* valid(): Check all elements. Fixes #791 - valid() validates only the first (invalid) element ([#791](https://github.com/jzaefferer/jquery-validation/issues/791), [6f26803](https://github.com/jzaefferer/jquery-validation/commit/6f268031afaf4e155424ee74dd11f6c47fbb8553)) + +1.11.1 / 2013-03-22 +================== + + * Revert to also converting parameters of range method to numbers. Closes gh-702 + * Replace most usage of PHP with mockjax handlers. Do some demo cleanup as well, update to newer masked-input plugin. Keep captcha demo in PHP. Fixes #662 + * Remove inline code highlighting from milk demo. View source works fine. + * Fix dynamic-totals demo by trimming whitespace from template content before passing to jQuery constructor + * Fix min/max validation. Closes gh-666. Fixes #648 + * Fixed 'messages' coming up as a rule and causing an exception after being updated through rules("add"). Closes gh-670, fixes #624 + * Add Korean (ko) localization. Closes gh-671 + * Improved the UK postcode method to filter out more invalid postcodes. Closes #682 + * Update messages_sv.js. Closes #683 + * Change grunt link to the project website. Closes #684 + * Move remote method down the list to run last, after all other methods applied to a field. Fixes #679 + * Update plugin.json description, should include the word 'validate' + * Fix typos + * Fix jQuery loader to use path of itself. Fixes nested demos. + * Update grunt-contrib-qunit to make use of PhantomJS 1.8, when installed through node module 'phantomjs' + * Make valid() return a boolean instead of 0 or 1. Fixes #109 - valid() does not return boolean value + +1.11.0 / 2013-02-04 +================== + + * Remove clearing as numbers of `min`, `max` and `range` rules. Fixes #455. Closes gh-528. + * Update pre-existing labels - fixes #430 closes gh-436 + * Fix $.validator.format to avoid group interpolation, where at least IE8/9 replaces -bash with the match. Fixes #614 + * Fix mimetype regex + * Add plugin manifest and update headers to just MIT license, drop unnecessary dual-licensing (like jQuery). + * Hebrew messages: Removed dots at end of sentences - Fixes gh-568 + * French translation for require_from_group validation. Fixes gh-573. + * Allow groups to be an array or a string - Fixes #479 + * Removed spaces with multiple MIME types + * Fix some date validations, JS syntax errors. + * Remove support for metadata plugin, replace with data-rule- and data-msg- (added in 907467e8) properties. + * Added sftp as a valid url-pattern + * Add Malay (my) localization + * Update localization/messages_hu.js + * Remove focusin/focusout polyfill. Fixes #542 - Inclusion of jquery.validate interfers with focusin and focusout events in IE9 + * Localization: Fixed typo in finnish translation + * Fix RTM demo to show invalid icon when going from valid back to invalid + * Fixed premature return in remote function which prevented ajax call from being made in case an input was entered too quickly. Ensures remote validation always validates the newest value. + * Undo fix for #244. Fixes #521 - E-mail validation fires immediately when text is in the field. + +1.10.0 / 2012-09-07 +=================== + + * Corrected French strings for nowhitespace, phoneUS, phoneUK and mobileUK based upon community feedback. + * rename files for language_REGION according to the standard ISO_3166-1 (http://en.wikipedia.org/wiki/ISO_3166-1), for Taiwan tha language is Chinese (zh) and the region is Taiwan (TW) + * Optimise RegEx patterns, especially for UK phone numbers. + * Add Language Name for each file, rename the language code according to the standard ISO 639 for Estonian, Georgian, Ukrainian and Chinese (http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) + * Added croatian (HR) localization + * Existing French translations were edited and French translations for the additional methods were added. + * Merged in changes for specifying custom error messages in data attributes + * Updated UK Mobile phone number regex for new numbers. Fixes #154 + * Add element to success call with test. Fixes #60 + * Fixed regex for time additional method. Fixes #131 + * resetForm now clears old previousValue on form elements. Fixes #312 + * Added checkbox test to require_from_group and changed require_from_group to use elementValue. Fixes #359 + * Fixed dataFilter response issues in jQuery 1.5.2+. Fixes #405 + * Added jQuery Mobile demo. Fixes #249 + * Deoptimize findByName for correctness. Fixes #82 - $.validator.prototype.findByName breaks in IE7 + * Added US zip code support and test. Fixes #90 + * Changed lastElement to lastActive in keyup, skip validation on tab or empty element. Fixes #244 + * Removed number stripping from stripHtml. Fixes #2 + * Fixed invalid count on invalid to valid remote validation. Fixes #286 + * Add link to file_input to demo index + * Moved old accept method to extension additional-method, added new accept method to handle standard browser mimetype filtering. Fixes #287 and supersedes #369 + * Disables blur event when onfocusout is set to false. Test added. + * Fixed value issue for radio buttons and checkboxes. Fixes #363 + * Added test for rangeWords and fixed regex and bounds in method. Fixes #308 + * Fixed TinyMCE Demo and added link on demo page. Fixes #382 + * Changed localization message for min/max. Fixes #273 + * Added pseudo selector for text input types to fix issue with default empty type attribute. Added tests and some test markup. Fixes #217 + * Fixed delegate bug for dynamic-totals demo. Fixes #51 + * Fix incorrect message for alphanumeric validator + * Removed incorrect false check on required attribute + * required attribute fix for non-html5 browsers. Fixes #301 + * Added methods "require_from_group" and "skip_or_fill_minimum" + * Use correct iso code for swedish + * Updated demo HTML files to use HTML5 doctype + * Fixed regex issue for decimals without leading zeroes. Added new methods test. Fixes #41 + * Introduce a elementValue method that normalizes only string values (don't touch array value of multi-select). Fixes #116 + * Support for dynamically added submit buttons, and updated test case. Uses validateDelegate. Code from PR #9 + * Fix bad double quote in test fixtures + * Fix maxWords method to include the upper bound, not exclude it. Fixes #284 + * Fixed grammar error in german range validator message. Fixes #315 + * Fixed handling of multiple class names for errorClass option. Test by Max Lynch. Fixes #280 + * Fix jQuery.format usage, should be $.validator.format. Fixes #329 + * Methods for 'all' UK phone numbers + UK postcodes + * Pattern method: Convert string param to RegExp. Fixes issue #223 + * grammar error in german localization file + * Added Estonian localization for messages + * Improve tooltip handling on themerollered demo + * Add type="text" to input fields without type attribute to please qSA + * Update themerollered demo to use tooltip to show errors as overlay. + * Update themerollered demo to use latest jQuery UI (along with newer jQuery version). Move code around to speed up page load. + * Fixed min error message broken in Japanese. + * Update form plugin to latest version. Enhance the ajaxSubmit demo. + * Drop dateDE and numberDE methods from classRuleSettings, leftover from moving those to localized methods + * Passing submit event to submitHandler callback + * Fixed #219 - Fix valid() on elements with dependency-callback or dependency-expression. + * Improve build to remove dist dir to ensure only the current release gets zipped up + +1.9.0 +--- +* Added Basque (EU) localization +* Added Slovenian (SL) localization +* Fixed issue #127 - Finnish translations has one : instead of ; +* Fixed Russian localization, minor syntax issue +* Added in support for HTML5 input types, fixes #97 +* Improved HTML5 support by setting novalidate attribute on the form, and reading the type attribute. +* Fixed showLabel() removing all classes from error element. Remove only settings.validClass. Fixes #151. +* Added 'pattern' to additional-methods to validate against arbitrary regular expressions. +* Improved email method to not allow the dot at the end (valid by RFC, but unwanted here). Fixes #143 +* Fixed swedish and norwegian translations, min/max messages got switched. Fixes #181 +* Fixed #184 - resetForm: should unset lastElement +* Fixed #71 - improve existing time method and add time12h method for 12h am/pm time format +* Fixed #177 - Fix validation of a single radio or checkbox input +* Fixed #189 - :hidden elements are now ignored by default +* Fixed #194 - Required as attribute fails if jQuery>=1.6 - Use .prop instead of .attr +* Fixed #47, #39, #32 - Allowed credit card numbers to contain spaces as well as dashes (spaces are commonly input by users). + +1.8.1 +--- +* Added Thai (TH) localization, fixes #85 +* Added Vietnamese (VI) localization, thanks Ngoc +* Fixed issue #78. Error/Valid styling applies to all radio buttons of same group for required validation. +* Don't use form.elements as that isn't supported in jQuery 1.6 anymore. Its buggy as hell anyway (IE6-8: form.elements === form). + +1.8.0 +--- +* Improved NL localization (http://plugins.jquery.com/node/14120) +* Added Georgian (GE) localization, thanks Avtandil Kikabidze +* Added Serbian (SR) localization, thanks Aleksandar Milovac +* Added ipv4 and ipv6 to additional methods, thanks Natal Ngétal +* Added Japanese (JA) localization, thanks Bryan Meyerovich +* Added Catalan (CA) localization, thanks Xavier de Pedro +* Fixed missing var statements within for-in loops +* Fix for remote validation, where a formatted message got messed up (https://github.com/jzaefferer/jquery-validation/issues/11) +* Bugfixes for compatibility with jQuery 1.5.1, while maintaining backwards-compatibility + +1.7 +--- +* Added Lithuanian (LT) localization +* Added Greek (EL) localization (http://plugins.jquery.com/node/12319) +* Added Latvian (LV) localization (http://plugins.jquery.com/node/12349) +* Added Hebrew (HE) localization (http://plugins.jquery.com/node/12039) +* Fixed Spanish (ES) localization (http://plugins.jquery.com/node/12696) +* Added jQuery UI themerolled demo +* Removed cmxform.js +* Fixed four missing semicolons (http://plugins.jquery.com/node/12639) +* Renamed phone-method in additional-methods.js to phoneUS +* Added phoneUK and mobileUK methods to additional-methods.js (http://plugins.jquery.com/node/12359) +* Deep extend options to avoid modifying multiple forms when using the rules-method on a single element (http://plugins.jquery.com/node/12411) +* Bugfixes for compatibility with jQuery 1.4.2, while maintaining backwards-compatibility + +1.6 +--- +* Added Arabic (AR), Portuguese (PTPT), Persian (FA), Finnish (FI) and Bulgarian (BR) localization +* Updated Swedish (SE) localization (some missing html iso characters) +* Fixed $.validator.addMethod to properly handle empty string vs. undefined for the message argument +* Fixed two accidental global variables +* Enhanced min/max/rangeWords (in additional-methods.js) to strip html before counting; good when counting words in a richtext editor +* Added localized methods for DE, NL and PT, removing the dateDE and numberDE methods (use messages_de.js and methods_de.js with date and number methods instead) +* Fixed remote form submit synchronization, kudos to Matas Petrikas +* Improved interactive select validation, now validating also on click (via option or select, inconsistent across browsers); doesn't work in Safari, which doesn't trigger a click event at all on select elements; fixes http://plugins.jquery.com/node/11520 +* Updated to latest form plugin (2.36), fixing http://plugins.jquery.com/node/11487 +* Bind to blur event for equalTo target to revalidate when that target changes, fixes http://plugins.jquery.com/node/11450 +* Simplified select validation, delegating to jQuery's val() method to get the select value; should fix http://plugins.jquery.com/node/11239 +* Fixed default message for digits (http://plugins.jquery.com/node/9853) +* Fixed issue with cached remote message (http://plugins.jquery.com/node/11029 and http://plugins.jquery.com/node/9351) +* Fixed a missing semicolon in additional-methods.js (http://plugins.jquery.com/node/9233) +* Added automatic detection of substitution parameters in messages, removing the need to provide format functions (http://plugins.jquery.com/node/11195) +* Fixed an issue with :filled/:blank somewhat caused by Sizzle (http://plugins.jquery.com/node/11144) +* Added an integer method to additional-methods.js (http://plugins.jquery.com/node/9612) +* Fixed errorsFor method where the for-attribute contains characters that need escaping to be valid inside a selector (http://plugins.jquery.com/node/9611) + +1.5.5 +--- +* Fix for http://plugins.jquery.com/node/8659 +* Fixed trailing comma in messages_cs.js + +1.5.4 +--- +* Fixed remote method bug (http://plugins.jquery.com/node/8658) + +1.5.3 +--- +* Fixed a bug related to the wrapper-option, where all ancestor-elements that matched the wrapper-option where selected (http://plugins.jquery.com/node/7624) +* Updated multipart demo to use latest jQuery UI accordion +* Added dateNL and time methods to additionalMethods.js +* Added Traditional Chinese (Taiwan, tw) and Kazakhstan (KK) localization +* Moved jQuery.format (formerly String.format) to jQuery.validator.format, jQuery.format is deprecated and will be removed in 1.6 (see http://code.google.com/p/jquery-utils/issues/detail?id=15 for details) +* Cleaned up messages_pl.js and messages_ptbr.js (still defined messages for max/min/rangeValue, which were removed in 1.4) +* Fixed flawed boolean logic in valid-plugin-method for multiple elements; now all elements need to be valid for a boolean-true result (http://plugins.jquery.com/node/8481) +* Enhancement $.validator.addMethod: An undefined third message-argument won't overwrite an existing message (http://plugins.jquery.com/node/8443) +* Enhancement to submitHandler option: When used, click events on submit buttons are captured and the submitting button is inserted into the form before calling submitHandler, and removed afterwards; keeps submit buttons intact (http://plugins.jquery.com/node/7183#comment-3585) +* Added option validClass, default "valid", which adds that class to all valid elements, after validation (http://dev.jquery.com/ticket/2205) +* Added creditcardtypes method to additionalMethods.js, including tests (via http://dev.jquery.com/ticket/3635) +* Improved remote method to allow serverside message as a string, or true for valid, or false for invalid using the clientside defined message (http://dev.jquery.com/ticket/3807) +* Improved accept method to also accept a Drupal-style comma-separated list of values (http://plugins.jquery.com/node/8580) + +1.5.2 +--- +* Fixed messages in additional-methods.js for maxWords, minWords, and rangeWords to include call to $.format +* Fixed value passed to methods to exclude carriage return (\r), same as jQuery's val() does +* Added slovak (sk) localization +* Added demo for integration with jQuery UI tabs +* Added selects-grouping example to tabs demo (see second tab, birthdate field) + +1.5.1 +--- +* Updated marketo demo to use invalidHandler option instead of binding invalid-form event +* Added TinyMCE integration example +* Added ukrainian (ua) localization +* Fixed length validation to work with trimmed value (regression from 1.5 where general trimming before validation was removed) +* Various small fixes for compatibility with both 1.2.6 and 1.3 + +1.5 +--- +* Improved basic demo, validating confirm-password field after password changed +* Fixed basic validation to pass the untrimmed input value as the first parameter to validation methods, changed required accordingly; breaks existing custom method that rely on the trimming +* Added norwegian (no), italian (it), hungarian (hu) and romanian (ro) localization +* Fixed #3195: Two flaws in swedish localization +* Fixed #3503: Extended rules("add") to accept messages property: use to specify add custom messages to an element via rules("add", { messages: { required: "Required! " } }); +* Fixed #3356: Regression from #2908 when using meta-option +* Fixed #3370: Added ignoreTitle option, set to skip reading messages from the title attribute, helps to avoid issues with Google Toolbar; default is false for compatibility +* Fixed #3516: Trigger invalid-form event even when remote validation is involved +* Added invalidHandler option as a shortcut to bind("invalid-form", function() {}) +* Fixed Safari issue for loading indicator in ajaxSubmit-integration-demo (append to body first, then hide) +* Added test for creditcard validation and improved default message +* Enhanced remote validation, accepting options to passthrough to $.ajax as parameter (either url string or options, including url property plus everything else that $.ajax supports) + +1.4 +--- +* Fixed #2931, validate elements in document order and ignore type=image inputs +* Fixed usage of $ and jQuery variables, now fully compatible with all variations of noConflict usage +* Implemented #2908, enabling custom messages via metadata ala class="{required:true,messages:{required:'required field'}}", added demo/custom-messages-metadata-demo.html +* Removed deprecated methods minValue (min), maxValue (max), rangeValue (rangevalue), minLength (minlength), maxLength (maxlength), rangeLength (rangelength) +* Fixed #2215 regression: Call unhighlight only for current elements, not everything +* Implemented #2989, enabling image button to cancel validation +* Fixed issue where IE incorrectly validates against maxlength=0 +* Added czech (cs) localization +* Reset validator.submitted on validator.resetForm(), enabling a full reset when necessary +* Fixed #3035, skipping all falsy attributes when reading rules (0, undefined, empty string), removed part of the maxlength workaround (for 0) +* Added dutch (nl) localization (#3201) + +1.3 +--- +* Fixed invalid-form event, now only triggered when form is invalid +* Added spanish (es), russian (ru), portuguese brazilian (ptbr), turkish (tr), and polish (pl) localization +* Added removeAttrs plugin to facilitate adding and removing multiple attributes +* Added groups option to display a single message for multiple elements, via groups: { arbitraryGroupName: "fieldName1 fieldName2[, fieldNameN" } +* Enhanced rules() for adding and removing (static) rules: rules("add", "method1[, methodN]"/{method1:param[, method_n:param]}) and rules("remove"[, "method1[, method_n]") +* Enhanced rules-option, accepts space-separated string-list of methods, eg. {birthdate: "required date"} +* Fixed checkbox group validation with inline rules: As long as the rules are specified on the first element, the group is now properly validated on click +* Fixed #2473, ignoring all rules with an explicit parameter of boolean-false, eg. required:false is the same as not specifying required at all (it was handled as required:true so far) +* Fixed #2424, with a modified patch from #2473: Methods returning a dependency-mismatch don't stop other rules from being evaluated anymore; still, success isn't applied for optional fields +* Fixed url and email validation to not use trimmed values +* Fixed creditcard validation to accept only digits and dashes ("asdf" is not a valid creditcard number) +* Allow both button and input elements for cancel buttons (via class="cancel") +* Fixed #2215: Fixed message display to call unhighlight as part of showing and hiding messages, no more visual side-effects while checking an element and extracted validator.checkForm to validate a form without UI sideeffects +* Rewrote custom selectors (:blank, :filled, :unchecked) with functions for compatibility with AIR + +1.2.1 +----- + +* Bundled delegate plugin with validate plugin - its always required anyway +* Improved remote validation to include parts from the ajaxQueue plugin for proper synchronization (no additional plugin necessary) +* Fixed stopRequest to prevent pendingRequest < 0 +* Added jQuery.validator.autoCreateRanges property, defaults to false, enable to convert min/max to range and minlength/maxlength to rangelength; this basically fixes the issue introduced by automatically creating ranges in 1.2 +* Fixed optional-methods to not highlight anything at all if the field is blank, that is, don't trigger success +* Allow false/null for highlight/unhighlight options instead of forcing a do-nothing-callback even when nothing needs to be highlighted +* Fixed validate() call with no elements selected, returning undefined instead of throwing an error +* Improved demo, replacing metadata with classes/attributes for specifying rules +* Fixed error when no custom message is used for remote validation +* Modified email and url validation to require domain label and top label +* Fixed url and email validation to require TLD (actually to require domain label); 1.2 version (TLD is optional) is moved to additions as url2 and email2 +* Fixed dynamic-totals demo in IE6/7 and improved templating, using textarea to store multiline template and string interpolation +* Added login form example with "Email password" link that makes the password field optional +* Enhanced dynamic-totals demo with an example of a single message for two fields + +1.2 +--- + +* Added AJAX-captcha validation example (based on http://psyrens.com/captcha/) +* Added remember-the-milk-demo (thanks RTM team for the permission!) +* Added marketo-demo (thanks Glen Lipka!) +* Added support for ajax-validation, see method "remote"; serverside returns JSON, true for valid elements, false or a String for invalid, String is used as message +* Added highlight and unhighlight options, by default toggles errorClass on element, allows custom highlighting +* Added valid() plugin method for easy programmatic checking of forms and fields without the need to use the validator API +* Added rules() plugin method to read and write rules for an element (currently read only) +* Replaced regex for email method, thanks to the contribution by Scott Gonzalez, see http://projects.scottsplayground.com/email_address_validation/ +* Restructured event architecture to rely solely on delegation, both improving performance, and ease-of-use for the developer (requires jquery.delegate.js) +* Moved documentation from inline to http://docs.jquery.com/Plugins/Validation - including interactive examples for all methods +* Removed validator.refresh(), validation is now completely dynamic +* Renamed minValue to min, maxValue to max and rangeValue to range, deprecating the previous names (to be removed in 1.3) +* Renamed minLength to minlength, maxLength to maxlength and rangeLength to rangelength, deprecating the previous names (to be removed in 1.3) +* Added feature to merge min + max into and range and minlength + maxlength into rangelength +* Added support for dynamic rule parameters, allowing to specify a function as a parameter eg. for minlength, called when validating the element +* Allow to specify null or an empty string as a message to display nothing (see marketo demo) +* Rules overhaul: Now supports combination of rules-option, metadata, classes (new) and attributes (new), see rules() for details + +1.1.2 +--- + +* Replaced regex for URL method, thanks to the contribution by Scott Gonzalez, see http://projects.scottsplayground.com/iri/ +* Improved email method to better handle unicode characters +* Fixed error container to hide when all elements are valid, not only on form submit +* Fixed String.format to jQuery.format (moving into jQuery namespace) +* Fixed accept method to accept both upper and lowercase extensions +* Fixed validate() plugin method to create only one validator instance for a given form and always return that one instance (avoids binding events multiple times) +* Changed debug-mode console log from "error" to "warn" level + +1.1.1 +----- + +* Fixed invalid XHTML, preventing error label creation in IE since jQuery 1.1.4 +* Fixed and improved String.format: Global search & replace, better handling of array arguments +* Fixed cancel-button handling to use validator-object for storing state instead of form element +* Fixed name selectors to handle "complex" names, eg. containing brackets ("list[]") +* Added button and disabled elements to exclude from validation +* Moved element event handlers to refresh to be able to add handlers to new elements +* Fixed email validation to allow long top level domains (eg. ".travel") +* Moved showErrors() from valid() to form() +* Added validator.size(): returns the number of current errors +* Call submitHandler with validator as scope for easier access of it's methods, eg. to find error labels using errorsFor(Element) +* Compatible with jQuery 1.1.x and 1.2.x + +1.1 +--- + +* Added validation on blur, keyup and click (for checkboxes and radiobutton). Replaces event-option. +* Fixed resetForm +* Fixed custom-methods-demo + +1.0 +--- + +* Improved number and numberDE methods to check for correct decimal numbers with delimiters +* Only elements that have rules are checked (otherwise success-option is applied to all elements) +* Added creditcard number method (thanks to Brian Klug) +* Added ignore-option, eg. ignore: "[@type=hidden]", using that expression to exclude elements to validate. Default: none, though submit and reset buttons are always ignored +* Heavily enhanced Functions-as-messages by providing a flexible String.format helper +* Accept Functions as messages, providing runtime-custom-messages +* Fixed exclusion of elements without rules from successList +* Fixed custom-method-demo, replaced the alert with message displaying the number of errors +* Fixed form-submit-prevention when using submitHandler +* Completely removed dependency on element IDs, though they are still used (when present) to link error labels to inputs. Achieved by using + an array with {name, message, element} instead of an object with id:message pairs for the internal errorList. +* Added support for specifying simple rules as simple strings, eg. "required" is equivalent to {required: true} +* Added feature: Add errorClass to invalid field�s parent element, making it easy to style the label/field container or the label for the field. +* Added feature: focusCleanup - If enabled, removes the errorClass from the invalid elements and hides all errors messages whenever the element is focused. +* Added success option to show the a field was validated successfully +* Fixed Opera select-issue (avoiding a attribute-collision) +* Fixed problems with focussing hidden elements in IE +* Added feature to skip validation for submit buttons with class "cancel" +* Fixed potential issues with Google Toolbar by preferring plugin option messages over title attribute +* submitHandler is only called when an actual submit event was handled, validator.form() returns false only for invalid forms +* Invalid elements are now focused only on submit or via validator.focusInvalid(), avoiding all trouble with focus-on-blur +* IE6 error container layout issue is solved +* Customize error element via errorElement option +* Added validator.refresh() to find new inputs in the form +* Added accept validation method, checks file extensions +* Improved dependency feature by adding two custom expressions: ":blank" to select elements with an empty value and �:filled� to select elements with a value, both excluding whitespace +* Added a resetForm() method to the validator: Resets each form element (using the form plugin, if available), removes classes on invalid elements and hides all error messages +* Fixed docs for validator.showErrors() +* Fixed error label creation to always use html() instead of text(), allowing arbitrary HTML passed in as messages +* Fixed error label creation to use specified error class +* Added dependency feature: The requires method accepts both String (jQuery expressions) and Functions as the argument +* Heavily improved customizing of error message display: Use normal messages and show/hide an additional container; Completely replace message display with own mechanism (while being able to delegate to the default handler; Customize placing of generated labels (instead of default below-element) +* Fixed two major bugs in IE (error containers) and Opera (metadata) +* Modified validation methods to accept empty fields as valid (exception: of course �required� and also �equalTo� methods) +* Renamed "min" to "minLength", "max" to "maxLength", "length" to "rangeLength" +* Added "minValue", "maxValue" and "rangeValue" +* Streamlined API for support of different events. The default, submit, can be disabled. If any event is specified, that is applied to each element (instead of the entire form). Combining keyup-validation with submit-validation is now extremely easy to setup +* Added support for one-message-per-rule when defining messages via plugin settings +* Added support to wrap metadata in some parent element. Useful when metadata is used for other plugins, too. +* Refactored tests and demos: Less files, better demos +* Improved documentation: More examples for methods, more reference texts explaining some basics diff --git a/testOauthClient/wwwroot/lib/jquery-validation/dist/additional-methods.js b/testOauthClient/wwwroot/lib/jquery-validation/dist/additional-methods.js new file mode 100644 index 00000000..df41fbd4 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/dist/additional-methods.js @@ -0,0 +1,998 @@ +/*! + * jQuery Validation Plugin v1.14.0 + * + * http://jqueryvalidation.org/ + * + * Copyright (c) 2015 Jörn Zaefferer + * Released under the MIT license + */ +(function( factory ) { + if ( typeof define === "function" && define.amd ) { + define( ["jquery", "./jquery.validate"], factory ); + } else { + factory( jQuery ); + } +}(function( $ ) { + +(function() { + + function stripHtml(value) { + // remove html tags and space chars + return value.replace(/<.[^<>]*?>/g, " ").replace(/ | /gi, " ") + // remove punctuation + .replace(/[.(),;:!?%#$'\"_+=\/\-“”’]*/g, ""); + } + + $.validator.addMethod("maxWords", function(value, element, params) { + return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length <= params; + }, $.validator.format("Please enter {0} words or less.")); + + $.validator.addMethod("minWords", function(value, element, params) { + return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length >= params; + }, $.validator.format("Please enter at least {0} words.")); + + $.validator.addMethod("rangeWords", function(value, element, params) { + var valueStripped = stripHtml(value), + regex = /\b\w+\b/g; + return this.optional(element) || valueStripped.match(regex).length >= params[0] && valueStripped.match(regex).length <= params[1]; + }, $.validator.format("Please enter between {0} and {1} words.")); + +}()); + +// Accept a value from a file input based on a required mimetype +$.validator.addMethod("accept", function(value, element, param) { + // Split mime on commas in case we have multiple types we can accept + var typeParam = typeof param === "string" ? param.replace(/\s/g, "").replace(/,/g, "|") : "image/*", + optionalValue = this.optional(element), + i, file; + + // Element is optional + if (optionalValue) { + return optionalValue; + } + + if ($(element).attr("type") === "file") { + // If we are using a wildcard, make it regex friendly + typeParam = typeParam.replace(/\*/g, ".*"); + + // Check if the element has a FileList before checking each file + if (element.files && element.files.length) { + for (i = 0; i < element.files.length; i++) { + file = element.files[i]; + + // Grab the mimetype from the loaded file, verify it matches + if (!file.type.match(new RegExp( "\\.?(" + typeParam + ")$", "i"))) { + return false; + } + } + } + } + + // Either return true because we've validated each file, or because the + // browser does not support element.files and the FileList feature + return true; +}, $.validator.format("Please enter a value with a valid mimetype.")); + +$.validator.addMethod("alphanumeric", function(value, element) { + return this.optional(element) || /^\w+$/i.test(value); +}, "Letters, numbers, and underscores only please"); + +/* + * Dutch bank account numbers (not 'giro' numbers) have 9 digits + * and pass the '11 check'. + * We accept the notation with spaces, as that is common. + * acceptable: 123456789 or 12 34 56 789 + */ +$.validator.addMethod("bankaccountNL", function(value, element) { + if (this.optional(element)) { + return true; + } + if (!(/^[0-9]{9}|([0-9]{2} ){3}[0-9]{3}$/.test(value))) { + return false; + } + // now '11 check' + var account = value.replace(/ /g, ""), // remove spaces + sum = 0, + len = account.length, + pos, factor, digit; + for ( pos = 0; pos < len; pos++ ) { + factor = len - pos; + digit = account.substring(pos, pos + 1); + sum = sum + factor * digit; + } + return sum % 11 === 0; +}, "Please specify a valid bank account number"); + +$.validator.addMethod("bankorgiroaccountNL", function(value, element) { + return this.optional(element) || + ($.validator.methods.bankaccountNL.call(this, value, element)) || + ($.validator.methods.giroaccountNL.call(this, value, element)); +}, "Please specify a valid bank or giro account number"); + +/** + * BIC is the business identifier code (ISO 9362). This BIC check is not a guarantee for authenticity. + * + * BIC pattern: BBBBCCLLbbb (8 or 11 characters long; bbb is optional) + * + * BIC definition in detail: + * - First 4 characters - bank code (only letters) + * - Next 2 characters - ISO 3166-1 alpha-2 country code (only letters) + * - Next 2 characters - location code (letters and digits) + * a. shall not start with '0' or '1' + * b. second character must be a letter ('O' is not allowed) or one of the following digits ('0' for test (therefore not allowed), '1' for passive participant and '2' for active participant) + * - Last 3 characters - branch code, optional (shall not start with 'X' except in case of 'XXX' for primary office) (letters and digits) + */ +$.validator.addMethod("bic", function(value, element) { + return this.optional( element ) || /^([A-Z]{6}[A-Z2-9][A-NP-Z1-2])(X{3}|[A-WY-Z0-9][A-Z0-9]{2})?$/.test( value ); +}, "Please specify a valid BIC code"); + +/* + * Código de identificación fiscal ( CIF ) is the tax identification code for Spanish legal entities + * Further rules can be found in Spanish on http://es.wikipedia.org/wiki/C%C3%B3digo_de_identificaci%C3%B3n_fiscal + */ +$.validator.addMethod( "cifES", function( value ) { + "use strict"; + + var num = [], + controlDigit, sum, i, count, tmp, secondDigit; + + value = value.toUpperCase(); + + // Quick format test + if ( !value.match( "((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)" ) ) { + return false; + } + + for ( i = 0; i < 9; i++ ) { + num[ i ] = parseInt( value.charAt( i ), 10 ); + } + + // Algorithm for checking CIF codes + sum = num[ 2 ] + num[ 4 ] + num[ 6 ]; + for ( count = 1; count < 8; count += 2 ) { + tmp = ( 2 * num[ count ] ).toString(); + secondDigit = tmp.charAt( 1 ); + + sum += parseInt( tmp.charAt( 0 ), 10 ) + ( secondDigit === "" ? 0 : parseInt( secondDigit, 10 ) ); + } + + /* The first (position 1) is a letter following the following criteria: + * A. Corporations + * B. LLCs + * C. General partnerships + * D. Companies limited partnerships + * E. Communities of goods + * F. Cooperative Societies + * G. Associations + * H. Communities of homeowners in horizontal property regime + * J. Civil Societies + * K. Old format + * L. Old format + * M. Old format + * N. Nonresident entities + * P. Local authorities + * Q. Autonomous bodies, state or not, and the like, and congregations and religious institutions + * R. Congregations and religious institutions (since 2008 ORDER EHA/451/2008) + * S. Organs of State Administration and regions + * V. Agrarian Transformation + * W. Permanent establishments of non-resident in Spain + */ + if ( /^[ABCDEFGHJNPQRSUVW]{1}/.test( value ) ) { + sum += ""; + controlDigit = 10 - parseInt( sum.charAt( sum.length - 1 ), 10 ); + value += controlDigit; + return ( num[ 8 ].toString() === String.fromCharCode( 64 + controlDigit ) || num[ 8 ].toString() === value.charAt( value.length - 1 ) ); + } + + return false; + +}, "Please specify a valid CIF number." ); + +/* + * Brazillian CPF number (Cadastrado de Pessoas Físicas) is the equivalent of a Brazilian tax registration number. + * CPF numbers have 11 digits in total: 9 numbers followed by 2 check numbers that are being used for validation. + */ +$.validator.addMethod("cpfBR", function(value) { + // Removing special characters from value + value = value.replace(/([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g, ""); + + // Checking value to have 11 digits only + if (value.length !== 11) { + return false; + } + + var sum = 0, + firstCN, secondCN, checkResult, i; + + firstCN = parseInt(value.substring(9, 10), 10); + secondCN = parseInt(value.substring(10, 11), 10); + + checkResult = function(sum, cn) { + var result = (sum * 10) % 11; + if ((result === 10) || (result === 11)) {result = 0;} + return (result === cn); + }; + + // Checking for dump data + if (value === "" || + value === "00000000000" || + value === "11111111111" || + value === "22222222222" || + value === "33333333333" || + value === "44444444444" || + value === "55555555555" || + value === "66666666666" || + value === "77777777777" || + value === "88888888888" || + value === "99999999999" + ) { + return false; + } + + // Step 1 - using first Check Number: + for ( i = 1; i <= 9; i++ ) { + sum = sum + parseInt(value.substring(i - 1, i), 10) * (11 - i); + } + + // If first Check Number (CN) is valid, move to Step 2 - using second Check Number: + if ( checkResult(sum, firstCN) ) { + sum = 0; + for ( i = 1; i <= 10; i++ ) { + sum = sum + parseInt(value.substring(i - 1, i), 10) * (12 - i); + } + return checkResult(sum, secondCN); + } + return false; + +}, "Please specify a valid CPF number"); + +/* NOTICE: Modified version of Castle.Components.Validator.CreditCardValidator + * Redistributed under the the Apache License 2.0 at http://www.apache.org/licenses/LICENSE-2.0 + * Valid Types: mastercard, visa, amex, dinersclub, enroute, discover, jcb, unknown, all (overrides all other settings) + */ +$.validator.addMethod("creditcardtypes", function(value, element, param) { + if (/[^0-9\-]+/.test(value)) { + return false; + } + + value = value.replace(/\D/g, ""); + + var validTypes = 0x0000; + + if (param.mastercard) { + validTypes |= 0x0001; + } + if (param.visa) { + validTypes |= 0x0002; + } + if (param.amex) { + validTypes |= 0x0004; + } + if (param.dinersclub) { + validTypes |= 0x0008; + } + if (param.enroute) { + validTypes |= 0x0010; + } + if (param.discover) { + validTypes |= 0x0020; + } + if (param.jcb) { + validTypes |= 0x0040; + } + if (param.unknown) { + validTypes |= 0x0080; + } + if (param.all) { + validTypes = 0x0001 | 0x0002 | 0x0004 | 0x0008 | 0x0010 | 0x0020 | 0x0040 | 0x0080; + } + if (validTypes & 0x0001 && /^(5[12345])/.test(value)) { //mastercard + return value.length === 16; + } + if (validTypes & 0x0002 && /^(4)/.test(value)) { //visa + return value.length === 16; + } + if (validTypes & 0x0004 && /^(3[47])/.test(value)) { //amex + return value.length === 15; + } + if (validTypes & 0x0008 && /^(3(0[012345]|[68]))/.test(value)) { //dinersclub + return value.length === 14; + } + if (validTypes & 0x0010 && /^(2(014|149))/.test(value)) { //enroute + return value.length === 15; + } + if (validTypes & 0x0020 && /^(6011)/.test(value)) { //discover + return value.length === 16; + } + if (validTypes & 0x0040 && /^(3)/.test(value)) { //jcb + return value.length === 16; + } + if (validTypes & 0x0040 && /^(2131|1800)/.test(value)) { //jcb + return value.length === 15; + } + if (validTypes & 0x0080) { //unknown + return true; + } + return false; +}, "Please enter a valid credit card number."); + +/** + * Validates currencies with any given symbols by @jameslouiz + * Symbols can be optional or required. Symbols required by default + * + * Usage examples: + * currency: ["£", false] - Use false for soft currency validation + * currency: ["$", false] + * currency: ["RM", false] - also works with text based symbols such as "RM" - Malaysia Ringgit etc + * + * + * + * Soft symbol checking + * currencyInput: { + * currency: ["$", false] + * } + * + * Strict symbol checking (default) + * currencyInput: { + * currency: "$" + * //OR + * currency: ["$", true] + * } + * + * Multiple Symbols + * currencyInput: { + * currency: "$,£,¢" + * } + */ +$.validator.addMethod("currency", function(value, element, param) { + var isParamString = typeof param === "string", + symbol = isParamString ? param : param[0], + soft = isParamString ? true : param[1], + regex; + + symbol = symbol.replace(/,/g, ""); + symbol = soft ? symbol + "]" : symbol + "]?"; + regex = "^[" + symbol + "([1-9]{1}[0-9]{0,2}(\\,[0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)$"; + regex = new RegExp(regex); + return this.optional(element) || regex.test(value); + +}, "Please specify a valid currency"); + +$.validator.addMethod("dateFA", function(value, element) { + return this.optional(element) || /^[1-4]\d{3}\/((0?[1-6]\/((3[0-1])|([1-2][0-9])|(0?[1-9])))|((1[0-2]|(0?[7-9]))\/(30|([1-2][0-9])|(0?[1-9]))))$/.test(value); +}, $.validator.messages.date); + +/** + * Return true, if the value is a valid date, also making this formal check dd/mm/yyyy. + * + * @example $.validator.methods.date("01/01/1900") + * @result true + * + * @example $.validator.methods.date("01/13/1990") + * @result false + * + * @example $.validator.methods.date("01.01.1900") + * @result false + * + * @example + * @desc Declares an optional input element whose value must be a valid date. + * + * @name $.validator.methods.dateITA + * @type Boolean + * @cat Plugins/Validate/Methods + */ +$.validator.addMethod("dateITA", function(value, element) { + var check = false, + re = /^\d{1,2}\/\d{1,2}\/\d{4}$/, + adata, gg, mm, aaaa, xdata; + if ( re.test(value)) { + adata = value.split("/"); + gg = parseInt(adata[0], 10); + mm = parseInt(adata[1], 10); + aaaa = parseInt(adata[2], 10); + xdata = new Date(Date.UTC(aaaa, mm - 1, gg, 12, 0, 0, 0)); + if ( ( xdata.getUTCFullYear() === aaaa ) && ( xdata.getUTCMonth () === mm - 1 ) && ( xdata.getUTCDate() === gg ) ) { + check = true; + } else { + check = false; + } + } else { + check = false; + } + return this.optional(element) || check; +}, $.validator.messages.date); + +$.validator.addMethod("dateNL", function(value, element) { + return this.optional(element) || /^(0?[1-9]|[12]\d|3[01])[\.\/\-](0?[1-9]|1[012])[\.\/\-]([12]\d)?(\d\d)$/.test(value); +}, $.validator.messages.date); + +// Older "accept" file extension method. Old docs: http://docs.jquery.com/Plugins/Validation/Methods/accept +$.validator.addMethod("extension", function(value, element, param) { + param = typeof param === "string" ? param.replace(/,/g, "|") : "png|jpe?g|gif"; + return this.optional(element) || value.match(new RegExp("\\.(" + param + ")$", "i")); +}, $.validator.format("Please enter a value with a valid extension.")); + +/** + * Dutch giro account numbers (not bank numbers) have max 7 digits + */ +$.validator.addMethod("giroaccountNL", function(value, element) { + return this.optional(element) || /^[0-9]{1,7}$/.test(value); +}, "Please specify a valid giro account number"); + +/** + * IBAN is the international bank account number. + * It has a country - specific format, that is checked here too + */ +$.validator.addMethod("iban", function(value, element) { + // some quick simple tests to prevent needless work + if (this.optional(element)) { + return true; + } + + // remove spaces and to upper case + var iban = value.replace(/ /g, "").toUpperCase(), + ibancheckdigits = "", + leadingZeroes = true, + cRest = "", + cOperator = "", + countrycode, ibancheck, charAt, cChar, bbanpattern, bbancountrypatterns, ibanregexp, i, p; + + // check the country code and find the country specific format + countrycode = iban.substring(0, 2); + bbancountrypatterns = { + "AL": "\\d{8}[\\dA-Z]{16}", + "AD": "\\d{8}[\\dA-Z]{12}", + "AT": "\\d{16}", + "AZ": "[\\dA-Z]{4}\\d{20}", + "BE": "\\d{12}", + "BH": "[A-Z]{4}[\\dA-Z]{14}", + "BA": "\\d{16}", + "BR": "\\d{23}[A-Z][\\dA-Z]", + "BG": "[A-Z]{4}\\d{6}[\\dA-Z]{8}", + "CR": "\\d{17}", + "HR": "\\d{17}", + "CY": "\\d{8}[\\dA-Z]{16}", + "CZ": "\\d{20}", + "DK": "\\d{14}", + "DO": "[A-Z]{4}\\d{20}", + "EE": "\\d{16}", + "FO": "\\d{14}", + "FI": "\\d{14}", + "FR": "\\d{10}[\\dA-Z]{11}\\d{2}", + "GE": "[\\dA-Z]{2}\\d{16}", + "DE": "\\d{18}", + "GI": "[A-Z]{4}[\\dA-Z]{15}", + "GR": "\\d{7}[\\dA-Z]{16}", + "GL": "\\d{14}", + "GT": "[\\dA-Z]{4}[\\dA-Z]{20}", + "HU": "\\d{24}", + "IS": "\\d{22}", + "IE": "[\\dA-Z]{4}\\d{14}", + "IL": "\\d{19}", + "IT": "[A-Z]\\d{10}[\\dA-Z]{12}", + "KZ": "\\d{3}[\\dA-Z]{13}", + "KW": "[A-Z]{4}[\\dA-Z]{22}", + "LV": "[A-Z]{4}[\\dA-Z]{13}", + "LB": "\\d{4}[\\dA-Z]{20}", + "LI": "\\d{5}[\\dA-Z]{12}", + "LT": "\\d{16}", + "LU": "\\d{3}[\\dA-Z]{13}", + "MK": "\\d{3}[\\dA-Z]{10}\\d{2}", + "MT": "[A-Z]{4}\\d{5}[\\dA-Z]{18}", + "MR": "\\d{23}", + "MU": "[A-Z]{4}\\d{19}[A-Z]{3}", + "MC": "\\d{10}[\\dA-Z]{11}\\d{2}", + "MD": "[\\dA-Z]{2}\\d{18}", + "ME": "\\d{18}", + "NL": "[A-Z]{4}\\d{10}", + "NO": "\\d{11}", + "PK": "[\\dA-Z]{4}\\d{16}", + "PS": "[\\dA-Z]{4}\\d{21}", + "PL": "\\d{24}", + "PT": "\\d{21}", + "RO": "[A-Z]{4}[\\dA-Z]{16}", + "SM": "[A-Z]\\d{10}[\\dA-Z]{12}", + "SA": "\\d{2}[\\dA-Z]{18}", + "RS": "\\d{18}", + "SK": "\\d{20}", + "SI": "\\d{15}", + "ES": "\\d{20}", + "SE": "\\d{20}", + "CH": "\\d{5}[\\dA-Z]{12}", + "TN": "\\d{20}", + "TR": "\\d{5}[\\dA-Z]{17}", + "AE": "\\d{3}\\d{16}", + "GB": "[A-Z]{4}\\d{14}", + "VG": "[\\dA-Z]{4}\\d{16}" + }; + + bbanpattern = bbancountrypatterns[countrycode]; + // As new countries will start using IBAN in the + // future, we only check if the countrycode is known. + // This prevents false negatives, while almost all + // false positives introduced by this, will be caught + // by the checksum validation below anyway. + // Strict checking should return FALSE for unknown + // countries. + if (typeof bbanpattern !== "undefined") { + ibanregexp = new RegExp("^[A-Z]{2}\\d{2}" + bbanpattern + "$", ""); + if (!(ibanregexp.test(iban))) { + return false; // invalid country specific format + } + } + + // now check the checksum, first convert to digits + ibancheck = iban.substring(4, iban.length) + iban.substring(0, 4); + for (i = 0; i < ibancheck.length; i++) { + charAt = ibancheck.charAt(i); + if (charAt !== "0") { + leadingZeroes = false; + } + if (!leadingZeroes) { + ibancheckdigits += "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".indexOf(charAt); + } + } + + // calculate the result of: ibancheckdigits % 97 + for (p = 0; p < ibancheckdigits.length; p++) { + cChar = ibancheckdigits.charAt(p); + cOperator = "" + cRest + "" + cChar; + cRest = cOperator % 97; + } + return cRest === 1; +}, "Please specify a valid IBAN"); + +$.validator.addMethod("integer", function(value, element) { + return this.optional(element) || /^-?\d+$/.test(value); +}, "A positive or negative non-decimal number please"); + +$.validator.addMethod("ipv4", function(value, element) { + return this.optional(element) || /^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/i.test(value); +}, "Please enter a valid IP v4 address."); + +$.validator.addMethod("ipv6", function(value, element) { + return this.optional(element) || /^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test(value); +}, "Please enter a valid IP v6 address."); + +$.validator.addMethod("lettersonly", function(value, element) { + return this.optional(element) || /^[a-z]+$/i.test(value); +}, "Letters only please"); + +$.validator.addMethod("letterswithbasicpunc", function(value, element) { + return this.optional(element) || /^[a-z\-.,()'"\s]+$/i.test(value); +}, "Letters or punctuation only please"); + +$.validator.addMethod("mobileNL", function(value, element) { + return this.optional(element) || /^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)6((\s|\s?\-\s?)?[0-9]){8}$/.test(value); +}, "Please specify a valid mobile number"); + +/* For UK phone functions, do the following server side processing: + * Compare original input with this RegEx pattern: + * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ + * Extract $1 and set $prefix to '+44' if $1 is '44', otherwise set $prefix to '0' + * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. + * A number of very detailed GB telephone number RegEx patterns can also be found at: + * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers + */ +$.validator.addMethod("mobileUK", function(phone_number, element) { + phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); + return this.optional(element) || phone_number.length > 9 && + phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[1345789]\d{2}|624)\s?\d{3}\s?\d{3})$/); +}, "Please specify a valid mobile number"); + +/* + * The número de identidad de extranjero ( NIE )is a code used to identify the non-nationals in Spain + */ +$.validator.addMethod( "nieES", function( value ) { + "use strict"; + + value = value.toUpperCase(); + + // Basic format test + if ( !value.match( "((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)" ) ) { + return false; + } + + // Test NIE + //T + if ( /^[T]{1}/.test( value ) ) { + return ( value[ 8 ] === /^[T]{1}[A-Z0-9]{8}$/.test( value ) ); + } + + //XYZ + if ( /^[XYZ]{1}/.test( value ) ) { + return ( + value[ 8 ] === "TRWAGMYFPDXBNJZSQVHLCKE".charAt( + value.replace( "X", "0" ) + .replace( "Y", "1" ) + .replace( "Z", "2" ) + .substring( 0, 8 ) % 23 + ) + ); + } + + return false; + +}, "Please specify a valid NIE number." ); + +/* + * The Número de Identificación Fiscal ( NIF ) is the way tax identification used in Spain for individuals + */ +$.validator.addMethod( "nifES", function( value ) { + "use strict"; + + value = value.toUpperCase(); + + // Basic format test + if ( !value.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)") ) { + return false; + } + + // Test NIF + if ( /^[0-9]{8}[A-Z]{1}$/.test( value ) ) { + return ( "TRWAGMYFPDXBNJZSQVHLCKE".charAt( value.substring( 8, 0 ) % 23 ) === value.charAt( 8 ) ); + } + // Test specials NIF (starts with K, L or M) + if ( /^[KLM]{1}/.test( value ) ) { + return ( value[ 8 ] === String.fromCharCode( 64 ) ); + } + + return false; + +}, "Please specify a valid NIF number." ); + +jQuery.validator.addMethod( "notEqualTo", function( value, element, param ) { + return this.optional(element) || !$.validator.methods.equalTo.call( this, value, element, param ); +}, "Please enter a different value, values must not be the same." ); + +$.validator.addMethod("nowhitespace", function(value, element) { + return this.optional(element) || /^\S+$/i.test(value); +}, "No white space please"); + +/** +* Return true if the field value matches the given format RegExp +* +* @example $.validator.methods.pattern("AR1004",element,/^AR\d{4}$/) +* @result true +* +* @example $.validator.methods.pattern("BR1004",element,/^AR\d{4}$/) +* @result false +* +* @name $.validator.methods.pattern +* @type Boolean +* @cat Plugins/Validate/Methods +*/ +$.validator.addMethod("pattern", function(value, element, param) { + if (this.optional(element)) { + return true; + } + if (typeof param === "string") { + param = new RegExp("^(?:" + param + ")$"); + } + return param.test(value); +}, "Invalid format."); + +/** + * Dutch phone numbers have 10 digits (or 11 and start with +31). + */ +$.validator.addMethod("phoneNL", function(value, element) { + return this.optional(element) || /^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)[1-9]((\s|\s?\-\s?)?[0-9]){8}$/.test(value); +}, "Please specify a valid phone number."); + +/* For UK phone functions, do the following server side processing: + * Compare original input with this RegEx pattern: + * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ + * Extract $1 and set $prefix to '+44' if $1 is '44', otherwise set $prefix to '0' + * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. + * A number of very detailed GB telephone number RegEx patterns can also be found at: + * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers + */ +$.validator.addMethod("phoneUK", function(phone_number, element) { + phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); + return this.optional(element) || phone_number.length > 9 && + phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:\d{2}\)?\s?\d{4}\s?\d{4}|\d{3}\)?\s?\d{3}\s?\d{3,4}|\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3})|\d{5}\)?\s?\d{4,5})$/); +}, "Please specify a valid phone number"); + +/** + * matches US phone number format + * + * where the area code may not start with 1 and the prefix may not start with 1 + * allows '-' or ' ' as a separator and allows parens around area code + * some people may want to put a '1' in front of their number + * + * 1(212)-999-2345 or + * 212 999 2344 or + * 212-999-0983 + * + * but not + * 111-123-5434 + * and not + * 212 123 4567 + */ +$.validator.addMethod("phoneUS", function(phone_number, element) { + phone_number = phone_number.replace(/\s+/g, ""); + return this.optional(element) || phone_number.length > 9 && + phone_number.match(/^(\+?1-?)?(\([2-9]([02-9]\d|1[02-9])\)|[2-9]([02-9]\d|1[02-9]))-?[2-9]([02-9]\d|1[02-9])-?\d{4}$/); +}, "Please specify a valid phone number"); + +/* For UK phone functions, do the following server side processing: + * Compare original input with this RegEx pattern: + * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ + * Extract $1 and set $prefix to '+44' if $1 is '44', otherwise set $prefix to '0' + * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. + * A number of very detailed GB telephone number RegEx patterns can also be found at: + * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers + */ +//Matches UK landline + mobile, accepting only 01-3 for landline or 07 for mobile to exclude many premium numbers +$.validator.addMethod("phonesUK", function(phone_number, element) { + phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); + return this.optional(element) || phone_number.length > 9 && + phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[1345789]\d{8}|624\d{6})))$/); +}, "Please specify a valid uk phone number"); + +/** + * Matches a valid Canadian Postal Code + * + * @example jQuery.validator.methods.postalCodeCA( "H0H 0H0", element ) + * @result true + * + * @example jQuery.validator.methods.postalCodeCA( "H0H0H0", element ) + * @result false + * + * @name jQuery.validator.methods.postalCodeCA + * @type Boolean + * @cat Plugins/Validate/Methods + */ +$.validator.addMethod( "postalCodeCA", function( value, element ) { + return this.optional( element ) || /^[ABCEGHJKLMNPRSTVXY]\d[A-Z] \d[A-Z]\d$/.test( value ); +}, "Please specify a valid postal code" ); + +/* +* Valida CEPs do brasileiros: +* +* Formatos aceitos: +* 99999-999 +* 99.999-999 +* 99999999 +*/ +$.validator.addMethod("postalcodeBR", function(cep_value, element) { + return this.optional(element) || /^\d{2}.\d{3}-\d{3}?$|^\d{5}-?\d{3}?$/.test( cep_value ); +}, "Informe um CEP válido."); + +/* Matches Italian postcode (CAP) */ +$.validator.addMethod("postalcodeIT", function(value, element) { + return this.optional(element) || /^\d{5}$/.test(value); +}, "Please specify a valid postal code"); + +$.validator.addMethod("postalcodeNL", function(value, element) { + return this.optional(element) || /^[1-9][0-9]{3}\s?[a-zA-Z]{2}$/.test(value); +}, "Please specify a valid postal code"); + +// Matches UK postcode. Does not match to UK Channel Islands that have their own postcodes (non standard UK) +$.validator.addMethod("postcodeUK", function(value, element) { + return this.optional(element) || /^((([A-PR-UWYZ][0-9])|([A-PR-UWYZ][0-9][0-9])|([A-PR-UWYZ][A-HK-Y][0-9])|([A-PR-UWYZ][A-HK-Y][0-9][0-9])|([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))\s?([0-9][ABD-HJLNP-UW-Z]{2})|(GIR)\s?(0AA))$/i.test(value); +}, "Please specify a valid UK postcode"); + +/* + * Lets you say "at least X inputs that match selector Y must be filled." + * + * The end result is that neither of these inputs: + * + * + * + * + * ...will validate unless at least one of them is filled. + * + * partnumber: {require_from_group: [1,".productinfo"]}, + * description: {require_from_group: [1,".productinfo"]} + * + * options[0]: number of fields that must be filled in the group + * options[1]: CSS selector that defines the group of conditionally required fields + */ +$.validator.addMethod("require_from_group", function(value, element, options) { + var $fields = $(options[1], element.form), + $fieldsFirst = $fields.eq(0), + validator = $fieldsFirst.data("valid_req_grp") ? $fieldsFirst.data("valid_req_grp") : $.extend({}, this), + isValid = $fields.filter(function() { + return validator.elementValue(this); + }).length >= options[0]; + + // Store the cloned validator for future validation + $fieldsFirst.data("valid_req_grp", validator); + + // If element isn't being validated, run each require_from_group field's validation rules + if (!$(element).data("being_validated")) { + $fields.data("being_validated", true); + $fields.each(function() { + validator.element(this); + }); + $fields.data("being_validated", false); + } + return isValid; +}, $.validator.format("Please fill at least {0} of these fields.")); + +/* + * Lets you say "either at least X inputs that match selector Y must be filled, + * OR they must all be skipped (left blank)." + * + * The end result, is that none of these inputs: + * + * + * + * + * + * ...will validate unless either at least two of them are filled, + * OR none of them are. + * + * partnumber: {skip_or_fill_minimum: [2,".productinfo"]}, + * description: {skip_or_fill_minimum: [2,".productinfo"]}, + * color: {skip_or_fill_minimum: [2,".productinfo"]} + * + * options[0]: number of fields that must be filled in the group + * options[1]: CSS selector that defines the group of conditionally required fields + * + */ +$.validator.addMethod("skip_or_fill_minimum", function(value, element, options) { + var $fields = $(options[1], element.form), + $fieldsFirst = $fields.eq(0), + validator = $fieldsFirst.data("valid_skip") ? $fieldsFirst.data("valid_skip") : $.extend({}, this), + numberFilled = $fields.filter(function() { + return validator.elementValue(this); + }).length, + isValid = numberFilled === 0 || numberFilled >= options[0]; + + // Store the cloned validator for future validation + $fieldsFirst.data("valid_skip", validator); + + // If element isn't being validated, run each skip_or_fill_minimum field's validation rules + if (!$(element).data("being_validated")) { + $fields.data("being_validated", true); + $fields.each(function() { + validator.element(this); + }); + $fields.data("being_validated", false); + } + return isValid; +}, $.validator.format("Please either skip these fields or fill at least {0} of them.")); + +/* Validates US States and/or Territories by @jdforsythe + * Can be case insensitive or require capitalization - default is case insensitive + * Can include US Territories or not - default does not + * Can include US Military postal abbreviations (AA, AE, AP) - default does not + * + * Note: "States" always includes DC (District of Colombia) + * + * Usage examples: + * + * This is the default - case insensitive, no territories, no military zones + * stateInput: { + * caseSensitive: false, + * includeTerritories: false, + * includeMilitary: false + * } + * + * Only allow capital letters, no territories, no military zones + * stateInput: { + * caseSensitive: false + * } + * + * Case insensitive, include territories but not military zones + * stateInput: { + * includeTerritories: true + * } + * + * Only allow capital letters, include territories and military zones + * stateInput: { + * caseSensitive: true, + * includeTerritories: true, + * includeMilitary: true + * } + * + * + * + */ + +$.validator.addMethod("stateUS", function(value, element, options) { + var isDefault = typeof options === "undefined", + caseSensitive = ( isDefault || typeof options.caseSensitive === "undefined" ) ? false : options.caseSensitive, + includeTerritories = ( isDefault || typeof options.includeTerritories === "undefined" ) ? false : options.includeTerritories, + includeMilitary = ( isDefault || typeof options.includeMilitary === "undefined" ) ? false : options.includeMilitary, + regex; + + if (!includeTerritories && !includeMilitary) { + regex = "^(A[KLRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$"; + } else if (includeTerritories && includeMilitary) { + regex = "^(A[AEKLPRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$"; + } else if (includeTerritories) { + regex = "^(A[KLRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$"; + } else { + regex = "^(A[AEKLPRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$"; + } + + regex = caseSensitive ? new RegExp(regex) : new RegExp(regex, "i"); + return this.optional(element) || regex.test(value); +}, +"Please specify a valid state"); + +// TODO check if value starts with <, otherwise don't try stripping anything +$.validator.addMethod("strippedminlength", function(value, element, param) { + return $(value).text().length >= param; +}, $.validator.format("Please enter at least {0} characters")); + +$.validator.addMethod("time", function(value, element) { + return this.optional(element) || /^([01]\d|2[0-3]|[0-9])(:[0-5]\d){1,2}$/.test(value); +}, "Please enter a valid time, between 00:00 and 23:59"); + +$.validator.addMethod("time12h", function(value, element) { + return this.optional(element) || /^((0?[1-9]|1[012])(:[0-5]\d){1,2}(\ ?[AP]M))$/i.test(value); +}, "Please enter a valid time in 12-hour am/pm format"); + +// same as url, but TLD is optional +$.validator.addMethod("url2", function(value, element) { + return this.optional(element) || /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value); +}, $.validator.messages.url); + +/** + * Return true, if the value is a valid vehicle identification number (VIN). + * + * Works with all kind of text inputs. + * + * @example + * @desc Declares a required input element whose value must be a valid vehicle identification number. + * + * @name $.validator.methods.vinUS + * @type Boolean + * @cat Plugins/Validate/Methods + */ +$.validator.addMethod("vinUS", function(v) { + if (v.length !== 17) { + return false; + } + + var LL = [ "A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" ], + VL = [ 1, 2, 3, 4, 5, 6, 7, 8, 1, 2, 3, 4, 5, 7, 9, 2, 3, 4, 5, 6, 7, 8, 9 ], + FL = [ 8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2 ], + rs = 0, + i, n, d, f, cd, cdv; + + for (i = 0; i < 17; i++) { + f = FL[i]; + d = v.slice(i, i + 1); + if (i === 8) { + cdv = d; + } + if (!isNaN(d)) { + d *= f; + } else { + for (n = 0; n < LL.length; n++) { + if (d.toUpperCase() === LL[n]) { + d = VL[n]; + d *= f; + if (isNaN(cdv) && n === 8) { + cdv = LL[n]; + } + break; + } + } + } + rs += d; + } + cd = rs % 11; + if (cd === 10) { + cd = "X"; + } + if (cd === cdv) { + return true; + } + return false; +}, "The specified vehicle identification number (VIN) is invalid."); + +$.validator.addMethod("zipcodeUS", function(value, element) { + return this.optional(element) || /^\d{5}(-\d{4})?$/.test(value); +}, "The specified US ZIP Code is invalid"); + +$.validator.addMethod("ziprange", function(value, element) { + return this.optional(element) || /^90[2-5]\d\{2\}-\d{4}$/.test(value); +}, "Your ZIP-code must be in the range 902xx-xxxx to 905xx-xxxx"); + +})); \ No newline at end of file diff --git a/testOauthClient/wwwroot/lib/jquery-validation/dist/additional-methods.min.js b/testOauthClient/wwwroot/lib/jquery-validation/dist/additional-methods.min.js new file mode 100644 index 00000000..b63c3ca1 --- /dev/null +++ b/testOauthClient/wwwroot/lib/jquery-validation/dist/additional-methods.min.js @@ -0,0 +1,4 @@ +/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015 + * http://jqueryvalidation.org/ + * Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */ +!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.validate.min"],a):a(jQuery)}(function(a){!function(){function b(a){return a.replace(/<.[^<>]*?>/g," ").replace(/ | /gi," ").replace(/[.(),;:!?%#$'\"_+=\/\-“”’]*/g,"")}a.validator.addMethod("maxWords",function(a,c,d){return this.optional(c)||b(a).match(/\b\w+\b/g).length<=d},a.validator.format("Please enter {0} words or less.")),a.validator.addMethod("minWords",function(a,c,d){return this.optional(c)||b(a).match(/\b\w+\b/g).length>=d},a.validator.format("Please enter at least {0} words.")),a.validator.addMethod("rangeWords",function(a,c,d){var e=b(a),f=/\b\w+\b/g;return this.optional(c)||e.match(f).length>=d[0]&&e.match(f).length<=d[1]},a.validator.format("Please enter between {0} and {1} words."))}(),a.validator.addMethod("accept",function(b,c,d){var e,f,g="string"==typeof d?d.replace(/\s/g,"").replace(/,/g,"|"):"image/*",h=this.optional(c);if(h)return h;if("file"===a(c).attr("type")&&(g=g.replace(/\*/g,".*"),c.files&&c.files.length))for(e=0;ec;c++)d=h-c,e=f.substring(c,c+1),g+=d*e;return g%11===0},"Please specify a valid bank account number"),a.validator.addMethod("bankorgiroaccountNL",function(b,c){return this.optional(c)||a.validator.methods.bankaccountNL.call(this,b,c)||a.validator.methods.giroaccountNL.call(this,b,c)},"Please specify a valid bank or giro account number"),a.validator.addMethod("bic",function(a,b){return this.optional(b)||/^([A-Z]{6}[A-Z2-9][A-NP-Z1-2])(X{3}|[A-WY-Z0-9][A-Z0-9]{2})?$/.test(a)},"Please specify a valid BIC code"),a.validator.addMethod("cifES",function(a){"use strict";var b,c,d,e,f,g,h=[];if(a=a.toUpperCase(),!a.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)"))return!1;for(d=0;9>d;d++)h[d]=parseInt(a.charAt(d),10);for(c=h[2]+h[4]+h[6],e=1;8>e;e+=2)f=(2*h[e]).toString(),g=f.charAt(1),c+=parseInt(f.charAt(0),10)+(""===g?0:parseInt(g,10));return/^[ABCDEFGHJNPQRSUVW]{1}/.test(a)?(c+="",b=10-parseInt(c.charAt(c.length-1),10),a+=b,h[8].toString()===String.fromCharCode(64+b)||h[8].toString()===a.charAt(a.length-1)):!1},"Please specify a valid CIF number."),a.validator.addMethod("cpfBR",function(a){if(a=a.replace(/([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g,""),11!==a.length)return!1;var b,c,d,e,f=0;if(b=parseInt(a.substring(9,10),10),c=parseInt(a.substring(10,11),10),d=function(a,b){var c=10*a%11;return(10===c||11===c)&&(c=0),c===b},""===a||"00000000000"===a||"11111111111"===a||"22222222222"===a||"33333333333"===a||"44444444444"===a||"55555555555"===a||"66666666666"===a||"77777777777"===a||"88888888888"===a||"99999999999"===a)return!1;for(e=1;9>=e;e++)f+=parseInt(a.substring(e-1,e),10)*(11-e);if(d(f,b)){for(f=0,e=1;10>=e;e++)f+=parseInt(a.substring(e-1,e),10)*(12-e);return d(f,c)}return!1},"Please specify a valid CPF number"),a.validator.addMethod("creditcardtypes",function(a,b,c){if(/[^0-9\-]+/.test(a))return!1;a=a.replace(/\D/g,"");var d=0;return c.mastercard&&(d|=1),c.visa&&(d|=2),c.amex&&(d|=4),c.dinersclub&&(d|=8),c.enroute&&(d|=16),c.discover&&(d|=32),c.jcb&&(d|=64),c.unknown&&(d|=128),c.all&&(d=255),1&d&&/^(5[12345])/.test(a)?16===a.length:2&d&&/^(4)/.test(a)?16===a.length:4&d&&/^(3[47])/.test(a)?15===a.length:8&d&&/^(3(0[012345]|[68]))/.test(a)?14===a.length:16&d&&/^(2(014|149))/.test(a)?15===a.length:32&d&&/^(6011)/.test(a)?16===a.length:64&d&&/^(3)/.test(a)?16===a.length:64&d&&/^(2131|1800)/.test(a)?15===a.length:128&d?!0:!1},"Please enter a valid credit card number."),a.validator.addMethod("currency",function(a,b,c){var d,e="string"==typeof c,f=e?c:c[0],g=e?!0:c[1];return f=f.replace(/,/g,""),f=g?f+"]":f+"]?",d="^["+f+"([1-9]{1}[0-9]{0,2}(\\,[0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)$",d=new RegExp(d),this.optional(b)||d.test(a)},"Please specify a valid currency"),a.validator.addMethod("dateFA",function(a,b){return this.optional(b)||/^[1-4]\d{3}\/((0?[1-6]\/((3[0-1])|([1-2][0-9])|(0?[1-9])))|((1[0-2]|(0?[7-9]))\/(30|([1-2][0-9])|(0?[1-9]))))$/.test(a)},a.validator.messages.date),a.validator.addMethod("dateITA",function(a,b){var c,d,e,f,g,h=!1,i=/^\d{1,2}\/\d{1,2}\/\d{4}$/;return i.test(a)?(c=a.split("/"),d=parseInt(c[0],10),e=parseInt(c[1],10),f=parseInt(c[2],10),g=new Date(Date.UTC(f,e-1,d,12,0,0,0)),h=g.getUTCFullYear()===f&&g.getUTCMonth()===e-1&&g.getUTCDate()===d?!0:!1):h=!1,this.optional(b)||h},a.validator.messages.date),a.validator.addMethod("dateNL",function(a,b){return this.optional(b)||/^(0?[1-9]|[12]\d|3[01])[\.\/\-](0?[1-9]|1[012])[\.\/\-]([12]\d)?(\d\d)$/.test(a)},a.validator.messages.date),a.validator.addMethod("extension",function(a,b,c){return c="string"==typeof c?c.replace(/,/g,"|"):"png|jpe?g|gif",this.optional(b)||a.match(new RegExp("\\.("+c+")$","i"))},a.validator.format("Please enter a value with a valid extension.")),a.validator.addMethod("giroaccountNL",function(a,b){return this.optional(b)||/^[0-9]{1,7}$/.test(a)},"Please specify a valid giro account number"),a.validator.addMethod("iban",function(a,b){if(this.optional(b))return!0;var c,d,e,f,g,h,i,j,k,l=a.replace(/ /g,"").toUpperCase(),m="",n=!0,o="",p="";if(c=l.substring(0,2),h={AL:"\\d{8}[\\dA-Z]{16}",AD:"\\d{8}[\\dA-Z]{12}",AT:"\\d{16}",AZ:"[\\dA-Z]{4}\\d{20}",BE:"\\d{12}",BH:"[A-Z]{4}[\\dA-Z]{14}",BA:"\\d{16}",BR:"\\d{23}[A-Z][\\dA-Z]",BG:"[A-Z]{4}\\d{6}[\\dA-Z]{8}",CR:"\\d{17}",HR:"\\d{17}",CY:"\\d{8}[\\dA-Z]{16}",CZ:"\\d{20}",DK:"\\d{14}",DO:"[A-Z]{4}\\d{20}",EE:"\\d{16}",FO:"\\d{14}",FI:"\\d{14}",FR:"\\d{10}[\\dA-Z]{11}\\d{2}",GE:"[\\dA-Z]{2}\\d{16}",DE:"\\d{18}",GI:"[A-Z]{4}[\\dA-Z]{15}",GR:"\\d{7}[\\dA-Z]{16}",GL:"\\d{14}",GT:"[\\dA-Z]{4}[\\dA-Z]{20}",HU:"\\d{24}",IS:"\\d{22}",IE:"[\\dA-Z]{4}\\d{14}",IL:"\\d{19}",IT:"[A-Z]\\d{10}[\\dA-Z]{12}",KZ:"\\d{3}[\\dA-Z]{13}",KW:"[A-Z]{4}[\\dA-Z]{22}",LV:"[A-Z]{4}[\\dA-Z]{13}",LB:"\\d{4}[\\dA-Z]{20}",LI:"\\d{5}[\\dA-Z]{12}",LT:"\\d{16}",LU:"\\d{3}[\\dA-Z]{13}",MK:"\\d{3}[\\dA-Z]{10}\\d{2}",MT:"[A-Z]{4}\\d{5}[\\dA-Z]{18}",MR:"\\d{23}",MU:"[A-Z]{4}\\d{19}[A-Z]{3}",MC:"\\d{10}[\\dA-Z]{11}\\d{2}",MD:"[\\dA-Z]{2}\\d{18}",ME:"\\d{18}",NL:"[A-Z]{4}\\d{10}",NO:"\\d{11}",PK:"[\\dA-Z]{4}\\d{16}",PS:"[\\dA-Z]{4}\\d{21}",PL:"\\d{24}",PT:"\\d{21}",RO:"[A-Z]{4}[\\dA-Z]{16}",SM:"[A-Z]\\d{10}[\\dA-Z]{12}",SA:"\\d{2}[\\dA-Z]{18}",RS:"\\d{18}",SK:"\\d{20}",SI:"\\d{15}",ES:"\\d{20}",SE:"\\d{20}",CH:"\\d{5}[\\dA-Z]{12}",TN:"\\d{20}",TR:"\\d{5}[\\dA-Z]{17}",AE:"\\d{3}\\d{16}",GB:"[A-Z]{4}\\d{14}",VG:"[\\dA-Z]{4}\\d{16}"},g=h[c],"undefined"!=typeof g&&(i=new RegExp("^[A-Z]{2}\\d{2}"+g+"$",""),!i.test(l)))return!1;for(d=l.substring(4,l.length)+l.substring(0,4),j=0;j9&&a.match(/^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[1345789]\d{2}|624)\s?\d{3}\s?\d{3})$/)},"Please specify a valid mobile number"),a.validator.addMethod("nieES",function(a){"use strict";return a=a.toUpperCase(),a.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)")?/^[T]{1}/.test(a)?a[8]===/^[T]{1}[A-Z0-9]{8}$/.test(a):/^[XYZ]{1}/.test(a)?a[8]==="TRWAGMYFPDXBNJZSQVHLCKE".charAt(a.replace("X","0").replace("Y","1").replace("Z","2").substring(0,8)%23):!1:!1},"Please specify a valid NIE number."),a.validator.addMethod("nifES",function(a){"use strict";return a=a.toUpperCase(),a.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)")?/^[0-9]{8}[A-Z]{1}$/.test(a)?"TRWAGMYFPDXBNJZSQVHLCKE".charAt(a.substring(8,0)%23)===a.charAt(8):/^[KLM]{1}/.test(a)?a[8]===String.fromCharCode(64):!1:!1},"Please specify a valid NIF number."),jQuery.validator.addMethod("notEqualTo",function(b,c,d){return this.optional(c)||!a.validator.methods.equalTo.call(this,b,c,d)},"Please enter a different value, values must not be the same."),a.validator.addMethod("nowhitespace",function(a,b){return this.optional(b)||/^\S+$/i.test(a)},"No white space please"),a.validator.addMethod("pattern",function(a,b,c){return this.optional(b)?!0:("string"==typeof c&&(c=new RegExp("^(?:"+c+")$")),c.test(a))},"Invalid format."),a.validator.addMethod("phoneNL",function(a,b){return this.optional(b)||/^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)[1-9]((\s|\s?\-\s?)?[0-9]){8}$/.test(a)},"Please specify a valid phone number."),a.validator.addMethod("phoneUK",function(a,b){return a=a.replace(/\(|\)|\s+|-/g,""),this.optional(b)||a.length>9&&a.match(/^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:\d{2}\)?\s?\d{4}\s?\d{4}|\d{3}\)?\s?\d{3}\s?\d{3,4}|\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3})|\d{5}\)?\s?\d{4,5})$/)},"Please specify a valid phone number"),a.validator.addMethod("phoneUS",function(a,b){return a=a.replace(/\s+/g,""),this.optional(b)||a.length>9&&a.match(/^(\+?1-?)?(\([2-9]([02-9]\d|1[02-9])\)|[2-9]([02-9]\d|1[02-9]))-?[2-9]([02-9]\d|1[02-9])-?\d{4}$/)},"Please specify a valid phone number"),a.validator.addMethod("phonesUK",function(a,b){return a=a.replace(/\(|\)|\s+|-/g,""),this.optional(b)||a.length>9&&a.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[1345789]\d{8}|624\d{6})))$/)},"Please specify a valid uk phone number"),a.validator.addMethod("postalCodeCA",function(a,b){return this.optional(b)||/^[ABCEGHJKLMNPRSTVXY]\d[A-Z] \d[A-Z]\d$/.test(a)},"Please specify a valid postal code"),a.validator.addMethod("postalcodeBR",function(a,b){return this.optional(b)||/^\d{2}.\d{3}-\d{3}?$|^\d{5}-?\d{3}?$/.test(a)},"Informe um CEP válido."),a.validator.addMethod("postalcodeIT",function(a,b){return this.optional(b)||/^\d{5}$/.test(a)},"Please specify a valid postal code"),a.validator.addMethod("postalcodeNL",function(a,b){return this.optional(b)||/^[1-9][0-9]{3}\s?[a-zA-Z]{2}$/.test(a)},"Please specify a valid postal code"),a.validator.addMethod("postcodeUK",function(a,b){return this.optional(b)||/^((([A-PR-UWYZ][0-9])|([A-PR-UWYZ][0-9][0-9])|([A-PR-UWYZ][A-HK-Y][0-9])|([A-PR-UWYZ][A-HK-Y][0-9][0-9])|([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))\s?([0-9][ABD-HJLNP-UW-Z]{2})|(GIR)\s?(0AA))$/i.test(a)},"Please specify a valid UK postcode"),a.validator.addMethod("require_from_group",function(b,c,d){var e=a(d[1],c.form),f=e.eq(0),g=f.data("valid_req_grp")?f.data("valid_req_grp"):a.extend({},this),h=e.filter(function(){return g.elementValue(this)}).length>=d[0];return f.data("valid_req_grp",g),a(c).data("being_validated")||(e.data("being_validated",!0),e.each(function(){g.element(this)}),e.data("being_validated",!1)),h},a.validator.format("Please fill at least {0} of these fields.")),a.validator.addMethod("skip_or_fill_minimum",function(b,c,d){var e=a(d[1],c.form),f=e.eq(0),g=f.data("valid_skip")?f.data("valid_skip"):a.extend({},this),h=e.filter(function(){return g.elementValue(this)}).length,i=0===h||h>=d[0];return f.data("valid_skip",g),a(c).data("being_validated")||(e.data("being_validated",!0),e.each(function(){g.element(this)}),e.data("being_validated",!1)),i},a.validator.format("Please either skip these fields or fill at least {0} of them.")),a.validator.addMethod("stateUS",function(a,b,c){var d,e="undefined"==typeof c,f=e||"undefined"==typeof c.caseSensitive?!1:c.caseSensitive,g=e||"undefined"==typeof c.includeTerritories?!1:c.includeTerritories,h=e||"undefined"==typeof c.includeMilitary?!1:c.includeMilitary;return d=g||h?g&&h?"^(A[AEKLPRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$":g?"^(A[KLRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$":"^(A[AEKLPRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$":"^(A[KLRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$",d=f?new RegExp(d):new RegExp(d,"i"),this.optional(b)||d.test(a)},"Please specify a valid state"),a.validator.addMethod("strippedminlength",function(b,c,d){return a(b).text().length>=d},a.validator.format("Please enter at least {0} characters")),a.validator.addMethod("time",function(a,b){return this.optional(b)||/^([01]\d|2[0-3]|[0-9])(:[0-5]\d){1,2}$/.test(a)},"Please enter a valid time, between 00:00 and 23:59"),a.validator.addMethod("time12h",function(a,b){return this.optional(b)||/^((0?[1-9]|1[012])(:[0-5]\d){1,2}(\ ?[AP]M))$/i.test(a)},"Please enter a valid time in 12-hour am/pm format"),a.validator.addMethod("url2",function(a,b){return this.optional(b)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a)},a.validator.messages.url),a.validator.addMethod("vinUS",function(a){if(17!==a.length)return!1;var b,c,d,e,f,g,h=["A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z"],i=[1,2,3,4,5,6,7,8,1,2,3,4,5,7,9,2,3,4,5,6,7,8,9],j=[8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2],k=0;for(b=0;17>b;b++){if(e=j[b],d=a.slice(b,b+1),8===b&&(g=d),isNaN(d)){for(c=0;c