 defaults = {
 	showAnimation:
-		time: .6
+		time: .4
 		curve: "cubic-bezier(0.4, 0.0, 0.2, 1)"
 }
 

			time: exports.defaults.showAnimation.time
			curve: exports.defaults.showAnimation.curve

	# Destroy the mask
	mask.onAnimationEnd ->
		if closeTo?
			layer.visible = false
		container.removeChild(layer)
		mask.destroy()

	return mask

		name: "mask"
		clip: true

	# Capture the parent of `layer`
	layerParent = layer.parent
	if layerParent? then mask.parent = layerParent

	# Depending on whether we're opening or closing, set different vars
	mask.props = if openFrom? then { x: midX, y: midY } else { midX: midX, midY: midY }

	# Create a container within the mask to place the referenced layer
	container = new Layer
		size: Screen.size
		parent: mask
		name: "container"
		force2d: true

	# Snapshot the layer
	container.screenFrame =
		x: 0
		y: 0
		size: Screen.size

	# Place the referenced layer inside the container
	container.addChild(layer)

	# Make our invisible layer, visible?
	if openFrom?
		layer.visible = true

