This repository has been archived by the owner on Aug 14, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
espresso.html
30 lines (28 loc) · 24.6 KB
/
espresso.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<!DOCTYPE html><html lang="en"><head><title>Espresso | mokacoding</title><meta name="description" content="A blog about software testing, iOS development, automation, and productivity."><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1"><!-- Open Graph meta tags--><meta property="og:title" content="Espresso"><meta property="og:description" content="A blog about software testing, iOS development, automation, and productivity."><meta property="og:url" content="/"><meta property="og:type" content="article"><meta property="og:site_name" content="mokacoding"><meta property="og:image" content="https://s3.amazonaws.com/mokacoding/mokacoding_og_image.jpg"><!-- Twitter meta tags--><meta property="twitter:card" content="summary"><meta property="twitter:title" content="Espresso"><meta property="twitter:site" content="@mokacoding"><meta property="twitter:creator" content="@mokagio"><!-- Stylesheets--><link href="/css/griddy.css" rel="stylesheet"><link href="/css/style.css" rel="stylesheet"><link href="/css/font-awesome.min.css" rel="stylesheet"><link href="/css/zenburn.css" rel="stylesheet"><!-- FavIcon--><!-- Thanks to https://www.favicon-generator.org/ & https://html2jade.org/--><link rel="apple-touch-icon" sizes="57x57" href="https://s3.amazonaws.com/mokacoding/apple-icon-57x57.png"><link rel="apple-touch-icon" sizes="60x60" href="https://s3.amazonaws.com/mokacoding/apple-icon-60x60.png"><link rel="apple-touch-icon" sizes="72x72" href="https://s3.amazonaws.com/mokacoding/apple-icon-72x72.png"><link rel="apple-touch-icon" sizes="76x76" href="https://s3.amazonaws.com/mokacoding/apple-icon-76x76.png"><link rel="apple-touch-icon" sizes="114x114" href="https://s3.amazonaws.com/mokacoding/apple-icon-114x114.png"><link rel="apple-touch-icon" sizes="120x120" href="https://s3.amazonaws.com/mokacoding/apple-icon-120x120.png"><link rel="apple-touch-icon" sizes="144x144" href="https://s3.amazonaws.com/mokacoding/apple-icon-144x144.png"><link rel="apple-touch-icon" sizes="152x152" href="https://s3.amazonaws.com/mokacoding/apple-icon-152x152.png"><link rel="apple-touch-icon" sizes="180x180" href="https://s3.amazonaws.com/mokacoding/apple-icon-180x180.png"><link rel="icon" type="image/png" sizes="192x192" href="https://s3.amazonaws.com/mokacoding/android-icon-192x192.png"><link rel="icon" type="image/png" sizes="32x32" href="https://s3.amazonaws.com/mokacoding/favicon-32x32.png"><link rel="icon" type="image/png" sizes="96x96" href="https://s3.amazonaws.com/mokacoding/favicon-96x96.png"><link rel="icon" type="image/png" sizes="16x16" href="https://s3.amazonaws.com/mokacoding/favicon-16x16.png"><link rel="manifest" href="https://s3.amazonaws.com/mokacoding/manifest.json"><meta name="msapplication-TileColor" content="#ffffff"><meta name="msapplication-TileImage" content="https://s3.amazonaws.com/mokacoding/ms-icon-144x144.png"><meta name="theme-color" content="#ffffff"><!-- SumoMe--><script src="//load.sumome.com/" data-sumo-site-id="dd80959300db03e20c8bc3dd899f1424fd764d261e6c3c41923c96482a270dba" async="async"></script></head><body><!-- Use this to render an extra header in special occasions--><div class="special-header"><div class="page"><div class="row-12"><div class="col-12"><p><!-- - Saving this for later and to avoid a `git revert`:markdown
[What is your biggest struggle right now with building software?](https://goo.gl/forms/lCLlJd9hqCUYoTME2)--><p><a href="https://tddinswift.com?utm_source=mokacoding-site&utm_campaign=coming-soon&utm_medium=sticky-header">Avilable Now: <strong>Test-Driven Development in Swift with SwiftUI and Combine</strong></a></p>
</p></div></div></div></div><div class="page"><div class="row-12"><div class="col-12 header"><h1 class="brand"><a href="/">mokacoding</a></h1><div class="punchline">unit and acceptance testing, automation, productivity</div><div class="links"><a href="/archive.html">Archive</a><a href="/tags.html">Tags</a><a href="https://gio.codes">About</a><a href="#subscribe">Subscribe</a><a href="/feed.xml"><i class="fa fa-rss"></i></a></div></div><div class="col-12"><h1><a href="/tag/combine/index.html">Espresso</a></h1><p>An <a href="https://en.wikipedia.org/wiki/Espresso">espresso</a> is a small coffee, sometimes taken as a quick break.</p>
<p>The espresso posts on mokacoding are short super focused post, mainly a way for me to share interesting little findings, and dump information I might forget.</p>
<p>Enjoy ☕️.</p>
<br><br><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-set-default-values-in-swift-compiler-generate-init">How to set default values in Swift compiler-generated initializers</a></h2><p class="post-meta"><span class="post-date">Wed Dec 23 2020 </span><a href="/tag/Swift/index.html" class="post-tag">-Swift</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">You can get the Swift compiler to generate an initializer with default values for your structs, if you're willing to put up with a bit of mutability.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/vim-rename-file">How to rename a file in Vim</a></h2><p class="post-meta"><span class="post-date">Fri Nov 06 2020 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Vim/index.html" class="post-tag">-Vim</a></p><p class="post-description">There are many ways to rename a file in Vim. Here's three.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/remove-trailing-whitespaces-in-folder-files">How to remove trailing whitespaces from all files in a folder</a></h2><p class="post-meta"><span class="post-date">Thu Nov 05 2020 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Terminal/index.html" class="post-tag">-Terminal</a><a href="/tag/Automation/index.html" class="post-tag">-Automation</a></p><p class="post-description">Here's a shell command to trim all the trailing whitespaces in all the files of the current folder.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-add-coauthors-to-a-git-commit">How to add co-authors to a Git commit</a></h2><p class="post-meta"><span class="post-date">Tue Aug 25 2020 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Git/index.html" class="post-tag">-Git</a><a href="/tag/GitHub/index.html" class="post-tag">-GitHub</a></p><p class="post-description"></p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-check-if-app-is-notarized">How to check if macOS app is notarized</a></h2><p class="post-meta"><span class="post-date">Mon Aug 24 2020 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description"></p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-reverse-a-file-in-the-terminal">How to reverse a file in the terminal</a></h2><p class="post-meta"><span class="post-date">Sat Aug 22 2020 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description"></p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-verify-ssh-key-password">How to verify your SSH private key password</a></h2><p class="post-meta"><span class="post-date">Thu Aug 20 2020 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description"></p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-check-if-ruby-array-contains-element">How to check if array contains element with block in Ruby</a></h2><p class="post-meta"><span class="post-date">Tue Aug 18 2020 </span><a href="/tag/Ruby/index.html" class="post-tag">-Ruby</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description"></p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/symliks-in-git">Symbolic links in Git</a></h2><p class="post-meta"><span class="post-date">Tue Sep 12 2017 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Git/index.html" class="post-tag">-Git</a></p><p class="post-description">Here's how to track symbolic liks in a Git repository, in a way suitable for teams.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/quick-beforesuite-aftersuite-behaviour">Quick beforeSuite and afterSuite behaviour</a></h2><p class="post-meta"><span class="post-date">Thu May 11 2017 </span><a href="/tag/Quick/index.html" class="post-tag">-Quick</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Testing/index.html" class="post-tag">-Testing</a></p><p class="post-description">A look at how beforeSuite and afterSuite behave in the Quick testing framework, and the dangers of using them</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/quick-beforeeach-aftereach-behaviour">Quick beforeEach and afterEach behaviour</a></h2><p class="post-meta"><span class="post-date">Mon May 08 2017 </span><a href="/tag/Quick/index.html" class="post-tag">-Quick</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Testing/index.html" class="post-tag">-Testing</a></p><p class="post-description">A look at how nested beforeEach and afterEach behave in the Quick testing framework.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/unless-swift">Unless.swift</a></h2><p class="post-meta"><span class="post-date">Tue Apr 04 2017 </span><a href="/tag/Swift/index.html" class="post-tag">-Swift</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">Porting Ruby's unless operator into Swift via a function.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/lessons-learned-working-on-danger-swiftlint-selective-linting">Lessons learned working on danger-switlint selective linting</a></h2><p class="post-meta"><span class="post-date">Thu Jan 26 2017 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Ruby/index.html" class="post-tag">-Ruby</a><a href="/tag/Open-Source/index.html" class="post-tag">-Open Source</a></p><p class="post-description">A little post to share some things I learnt while working on a PR for danger-swiftlint to allow selective linting.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/setting-up-firebase-without-cocoapods">Setting Up Firebase Without Using CocoaPods</a></h2><p class="post-meta"><span class="post-date">Mon Aug 15 2016 </span><a href="/tag/Xcode/index.html" class="post-tag">-Xcode</a><a href="/tag/Firebase/index.html" class="post-tag">-Firebase</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">A guide on how to configure your Xcode project to use Google Firebase without using CocoaPods.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/cloud-66-postfix-deploy-hook">Cloud 66 Postfix Deploy Hook</a></h2><p class="post-meta"><span class="post-date">Mon Aug 01 2016 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Cloud-66/index.html" class="post-tag">-Cloud 66</a><a href="/tag/DevOps/index.html" class="post-tag">-DevOps</a></p><p class="post-description">A deploy hook to configure Postfix every time a Cloud 66 stack is built</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/strong-opinions-loosely-held">Strong Opinions Loosely Held</a></h2><p class="post-meta"><span class="post-date">Fri Jul 08 2016 </span><a href="/tag/Podcasts/index.html" class="post-tag">-Podcasts</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Quotes/index.html" class="post-tag">-Quotes</a></p><p class="post-description">Strong opinions loosely held, and other cornerstones for a winning mindset</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/writing-your-own-swift-if-let">Writing your own Swift "if let"</a></h2><p class="post-meta"><span class="post-date">Thu Jul 07 2016 </span><a href="/tag/Swift/index.html" class="post-tag">-Swift</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">An exercise to understand Swift's optional type: reimplementing the if let functionality</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/swift-unavailable-how-to">How to make Swift methods unavailable</a></h2><p class="post-meta"><span class="post-date">Tue Jun 07 2016 </span><a href="/tag/Swift/index.html" class="post-tag">-Swift</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">A quick post showing how to use the Swift availability attribute to mark objects and functions as unavailable.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/nsdateformatter-json-date">NSDateFormatter format for JSON dates</a></h2><p class="post-meta"><span class="post-date">Thu May 12 2016 </span><a href="/tag/Swift/index.html" class="post-tag">-Swift</a><a href="/tag/Foundation/index.html" class="post-tag">-Foundation</a><a href="/tag/JSON/index.html" class="post-tag">-JSON</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">How to configure NSDateFormatter to work with JSON API dates.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/functional-core-reactive-shell-resources">"Functional Core, Reactive Shell" Resources</a></h2><p class="post-meta"><span class="post-date">Fri Apr 15 2016 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Talks/index.html" class="post-tag">-Talks</a></p><p class="post-description">Links from my "Functional Core, Reactive Shell" talk</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/update-all-xcode-plugins-for-latest-version">How to update all plug-ins for the latest version of Xcode and Xcode-beta</a></h2><p class="post-meta"><span class="post-date">Wed Feb 24 2016 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Xcode/index.html" class="post-tag">-Xcode</a></p><p class="post-description">An handy script to update all Xcode plug-ins to be compatible with the latest version of Xcode and Xcode-beta.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-fix-fabric-startup-crash">How To Fix Fabric Crashing On Startup When Installed Via CocoaPods</a></h2><p class="post-meta"><span class="post-date">Thu Jan 28 2016 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/iOS/index.html" class="post-tag">-iOS</a></p><p class="post-description">If you are experiencing crashes with a version of Fabric and Crashlytics installed via CocoaPods chances are you are missing required information in the Info.plist. This post shows how to solve this issue.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/double-slash-xcconfig">How to use a double slash in xcconfig files</a></h2><p class="post-meta"><span class="post-date">Sat Jan 02 2016 </span><a href="/tag/Xcode/index.html" class="post-tag">-Xcode</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">A short post showing how to use a double slash in xcconfig files, for example to write URLs like https://mokacoding.com</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/bitbucket-pr-from-command-line">Opening a PR to Bitbucket from the terminal</a></h2><p class="post-meta"><span class="post-date">Thu Nov 26 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Automation/index.html" class="post-tag">-Automation</a><a href="/tag/BitBucket/index.html" class="post-tag">-BitBucket</a></p><p class="post-description">A simple script you can run to open a PR on BitBucket for your current branch.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/xcode-plugins-update">How to update an Xcode plug-in for the latest version of Xcode</a></h2><p class="post-meta"><span class="post-date">Wed Nov 25 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Xcode/index.html" class="post-tag">-Xcode</a></p><p class="post-description">A simple command to run in your terminal to make sure you can use your favourite plugins on the latest version of Xcode</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/hacker-news-button">Hacker News Button</a></h2><p class="post-meta"><span class="post-date">Tue Nov 24 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">How to add an Hacker News button to your blog</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/env-xargs">Injecting environment variables from a file with xargs</a></h2><p class="post-meta"><span class="post-date">Fri Nov 13 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Shell/index.html" class="post-tag">-Shell</a><a href="/tag/Tooling/index.html" class="post-tag">-Tooling</a></p><p class="post-description">How to provide environment variables stored in a .env file as an input for a command execution without having to export then, with a deep look at the shell commands used.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/homebrew-in-ci-script">How to use Homebrew in CI</a></h2><p class="post-meta"><span class="post-date">Wed Nov 04 2015 </span><a href="/tag/Continuous-Integration/index.html" class="post-tag">-Continuous Integration</a><a href="/tag/Homebrew/index.html" class="post-tag">-Homebrew</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">A quick guide on how to safely use Homebrew in CI.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/ifttt-pocket-rss">The best free RSS reader app ever: IFTTT + Pocket</a></h2><p class="post-meta"><span class="post-date">Thu Oct 08 2015 </span><a href="/tag/Automation/index.html" class="post-tag">-Automation</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">By using the powerful automation provided by IFTTT we can make deliver the latest posts of your favourite blogs to Pocket. This is the most powerful RSS reader ever, and it is free.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/nerdtree-relative-numbers">How to display relative line numbers in NERDTree</a></h2><p class="post-meta"><span class="post-date">Thu Oct 01 2015 </span><a href="/tag/Vim/index.html" class="post-tag">-Vim</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">Vim's relative line numbers are great for jumpin around files, and once you get used to them you want to enable them everywhere. Here's how to have NERDTree use relative line numbers</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-always-run-latest-simulator-cli">How to always use the latest Simulator with Xcodebuild</a></h2><p class="post-meta"><span class="post-date">Fri Sep 25 2015 </span><a href="/tag/Xcode/index.html" class="post-tag">-Xcode</a><a href="/tag/Automation/index.html" class="post-tag">-Automation</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">There is a simple keyword you can use in the destination option of an xcodebuild command to always run the most recent Simulator version.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/how-to-install-xcode-cli-tools-without-gui">How to install Xcode Command Line Tools without GUI or Xcode</a></h2><p class="post-meta"><span class="post-date">Wed Sep 09 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Xcode/index.html" class="post-tag">-Xcode</a><a href="/tag/Automation/index.html" class="post-tag">-Automation</a></p><p class="post-description">Here's a little script that will allow you to install the Xcode Command Line Tools without having to install Xcode, nor having a logged GUI. This can come pretty handy in automated scripts or when provisioning virtual machines.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/custom-afnetworking-response-serializer-for-errors">AFNetworking custom response serializer to add error information</a></h2><p class="post-meta"><span class="post-date">Wed Aug 19 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/iOS/index.html" class="post-tag">-iOS</a><a href="/tag/Objective-C/index.html" class="post-tag">-Objective-C</a></p><p class="post-description">How to implement a custom AFNetworking response serializer to read the failure response data and populate the callback error with it.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/itunes-connect-multiple-accounts">How to have multiple iTunes Connect accounts, and submit apps</a></h2><p class="post-meta"><span class="post-date">Sat Aug 15 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/iTunes-Connect/index.html" class="post-tag">-iTunes Connect</a></p><p class="post-description"></p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/swift-array-string-characters">Swift array of characters from String</a></h2><p class="post-meta"><span class="post-date">Wed Aug 12 2015 </span><a href="/tag/Swift/index.html" class="post-tag">-Swift</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">How to get an array of single characters String from a multiple characters String. From foobar to [f, o, o, b, a, r].</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/terminal-reusing-last-command-parameter">How to reuse the last parameter in a terminal command</a></h2><p class="post-meta"><span class="post-date">Wed Aug 05 2015 </span><a href="/tag/Shell/index.html" class="post-tag">-Shell</a><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a></p><p class="post-description">When typing a shell command it is possible to reuse the last argument of the previous call without having to type it. Let's see how.</p></div><div class="post-container tag"><h2 class="post-title"><a href="/blog/packaging-swift-ipa">Packaging an ipa with Swift files from the terminal</a></h2><p class="post-meta"><span class="post-date">Mon Aug 03 2015 </span><a href="/tag/Espresso/index.html" class="post-tag">-Espresso</a><a href="/tag/Swift/index.html" class="post-tag">-Swift</a><a href="/tag/Automation/index.html" class="post-tag">-Automation</a><a href="/tag/TestFlight/index.html" class="post-tag">-TestFlight</a></p><p class="post-description">If you are having problems with xcodebuild failing to export your apps with either Swift or Watch Kit support here's the solution, with a handy custom script.</p></div></div></div><div class="row-12 footer"><div class="col-12"><h3><a href="/">mokacoding</a></h3></div><div id="copy" class="col-9"><p>Hi I'm <a href="https://gio.codes">Gio</a> I write here semi-regularly on software testing and TDD, productivity, and iOS development.</p>
<p><a href="mailto:[email protected]">Get in touch</a> if you're interested in working together.</p>
</div><div id="links" class="col-3"><p><i class="fa fa-twitter"></i> <a href="https://twitter.com/mokagio">@mokagio</a></p><p><i class="fa fa-github"></i> <a href="https://github.com/mokagio">mokagio</a></p></div></div></div></body><script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-43554041-1', 'auto');
ga('send', 'pageview');
</script><script>var toggle = function(elm){
var y = elm.style && elm.style.display ? elm.style.display : 'block';
if (y == 'block'){
elm.style.opacity='0';
setTimeout( function(){ elm.style.display = 'none'; }, 300 );
}
else {
elm.style.display='block';
setTimeout( function(){ elm.style.opacity = '1'; }, 10 );
}
}
document.getElementById('close').onclick = function(){
toggle(document.getElementById('sticky-header'));
toggle(document.getElementById('sticky-header-padding-hack'));
}</script></html>