Copyright (c) 2010-2015 Daniel Nouri and Contributors.
All Rights Reserved
