placeholder_base = 'w3tc_lazyload_' .
			md5( isset( $_SERVER['REQUEST_TIME'] ) ? sanitize_text_field( wp_unslash( $_SERVER['REQUEST_TIME'] ) ) : '' ) . '_';
	}
	public function remove_unmutable( $buffer ) {
		// scripts
		$buffer = preg_replace_callback(
			'~~is',
			array( $this, 'placeholder' ), $buffer );
		// styles
		$buffer = preg_replace_callback(
			'~\s*~is',
			array($this, 'placeholder'), $buffer);
		return $buffer;
	}
	public function restore_unmutable( $buffer ) {
		return str_replace(
			array_keys( $this->placeholders ),
			array_values( $this->placeholders ),
			$buffer
		);
	}
	public function placeholder( $matches ) {
		$key = '{' .$this->placeholder_base . count( $this->placeholders ) . '}';
		$this->placeholders[$key] = $matches[0];
		return $key;
	}
}