 	common = {
 		code = "
 			/*
-			 * Copyright 2011-2015 Branimir Karadzic. All rights reserved.
-			 * License: http://www.opensource.org/licenses/BSD-2-Clause
+			 * Copyright 2011-2016 Branimir Karadzic. All rights reserved.
+			 * License: https://github.com/bkaradzic/bgfx#license-bsd-2-clause
 			 */
 
 			#if !defined(BGFX_CONFIG_MAX_BONES)

			#endif // !defined(BGFX_CONFIG_MAX_BONES)

			#ifndef __cplusplus

			#if BGFX_SHADER_LANGUAGE_HLSL
			#	define dFdx(_x) ddx(_x)

				return vec3(normalize(_encodedNormal.xy) * sqrt(1.0 - zz*zz), zz);
			}

			vec2 octahedronWrap(vec2 _val)
			{
				// Reference:
				// Octahedron normal vector encoding
				// http://kriscg.blogspot.com/2014/04/octahedron-normal-vector-encoding.html
				return (1.0 - abs(_val.yx) )
					 * mix(vec2_splat(-1.0), vec2_splat(1.0), vec2(greaterThanEqual(_val.xy, vec2_splat(0.0) ) ) );
			}
