text:
var crypto = require('crypto');
var fs = require('fs');
var urlutil = require('url');
var pathutil = require('path');
var requestURI = require('./request').requestURI;
var requestURIs = require('./request').requestURIs;

var HEADER_WHITELIST =
    ['date', 'last-modified', 'expires', 'cache-control', 'content-type'];

function hasOwnProperty(o, k) {
  return Object.prototype.hasOwnProperty.call(o, k);
}

function relativePath(path, rootPath) {
  var pathSplit = path.split('/');
  var rootSplit = rootPath.split('/');
  var pathPart;
  var rootPart;
  while ((pathPart = pathSplit.shift()) == (rootPart = rootSplit.shift())) {;}

  return pathutil.join(
    (new Array(rootSplit.length+1)).join('../')
  , pathPart
  , pathSplit.join('/')
  );
}

// Normal `path.normalize` uses backslashes on Windows, so this is a custom
// implimentation, sigh.
function normalizePath(path) {
  var pathComponents1 = path.split('/');
  var pathComponents2 = [];

  var component;
  for (var i = 0, ii = pathComponents1.length; i < ii; i++) {
    component = pathComponents1[i];
    switch (component) {
      case '':
        if (i == ii - 1) {
          pathComponents2.push(component);
          break;
        }
      case '.':
        if (i == 0) {
          pathComponents2.push(component);
        }
        break;
      case '..':
        if (pathComponents2.length > 1
          || (pathComponents2.length == 1
            && pathComponents2[0] != ''
            && pathComponents2[0] != '.')) {
          pathComponents2.pop();
          break;
        }
      default:
        pathComponents2.push(component);
    }
  }

  return pathComponents2.join('/');
}

function toJSLiteral(string) {
  // Remember, JSON is not a subset of JavaScript. Some line terminators must
  // be escaped manually.
  var result = '"' + escapeJavaScriptData(string) + '"';
  result = result.replace('\u2028', '\\u2028').replace('\u2029', '\\u2029');
  return result;
}

// OSWASP Guidlines: escape all non alphanumeric characters in ASCII space.
var JAVASCRIPT_CHARACTERS_EXPRESSION =
    /[\x00-\x2F\x3A-\x40\5B-\x60\x7B-\xFF]/g;
function escapeJavaScriptData(text) {
  return text && text.replace(JAVASCRIPT_CHARACTERS_EXPRESSION, function (c) {
    return "\\x" + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
  });
}

// Only allow a subset of JavaScript expressions that are reasonable and cannot
// look like HTML (e.g. `require.define`, `requireForKey("key").define`).
var JSONP_CALLBACK_EXPRESSION = /^[a-zA-Z0-9$:._'"\\()\[\]\{\}]+$/;

function mixin(object1, object2, objectN) {
  var object = {};
  for (var i = 0, ii = arguments.length; i < ii; i++) {
    var o = arguments[i];
    for (var key in o) {
      if (hasOwnProperty(o, key)) {
        object[key] = o[key];
      }
    }
  }
  return object;
}

function selectProperties(o, keys) {
  var object = {};
  for (var i = 0, ii = keys.length; i < ii; i++) {
    var key = keys[i];
    if (hasOwnProperty(o, key)) {
      object[key] = o[key];
    }
  }
  return object;
}

function validateURI(uri) {
  var parsed = urlutil.parse(uri);
  if (parsed.protocol != 'file:'
      && parsed.protocol != 'http:'
      && parsed.protocol != 'https:') {
    throw "Invalid URI: " + JSON.stringify(uri) + ".";
  }
}

// Request HEAD for the given resources and return the composition of all
// responses. Each response is merged in a way preserves the repeatability and
// meaning of the aggregate. If any response can not be merged cleanly the
// result will be `undefined`.
function mergeHeaders(h_1, h_2, h_n) {
  var headersList = Array.prototype.slice.call(arguments, 0);
  var headers = {};

  var values, value;
  values = headersList.map(function (h) {
    return Date.parse(h['date']);
  });
  if (values.every(function (value) {return !isNaN(value)})) {
    value = Math.max.apply(this, values);
    headers['date'] = (new Date(value)).toUTCString();
  }

  values = headersList.map(function (h) {
    return Date.parse(h['last-modified']);
  });
  if (values.every(function (value) {return !isNaN(value)})) {
    value = Math.max.apply(this, values);
    headers['last-modified'] = (new Date(value)).toUTCString();
  }

  values = headersList.map(function (h) {
    return Date.parse(h['expires']);
  });
  if (values.every(function (value) {return !isNaN(value)})) {
    value = Math.min.apply(this, values);
    headers['expires'] = (new Date(value)).toUTCString();
  }

  values = headersList.map(function (h) {
    var expires = (h['cache-control'] || '').match(/(?:max-age=(\d+))?/)[1];
    return parseInt(expires, 10);
  });
  if (values.every(function (value) {return !isNaN(value)})) {
    value = Math.min.apply(this, values);
    headers['cache-control'] = 'max-age=' + value.toString(10);
  }

  return headers;
}

function packagedDefine(JSONPCallback, moduleMap) {
  var onFirstEntry = true;
  content = JSONPCallback + '({\n';
  for (path in moduleMap) {
    if (hasOwnProperty(moduleMap, path)) {
      content += onFirstEntry ? '  ' : ', ';
      content += toJSLiteral(path) + ': ';
      if (moduleMap[path] === null) {
        content += 'null\n';
      } else {
        content += 'function (require, exports, module) {\n'
          + moduleMap[path] + '\n'
          + '}\n'
          ;
      }
      onFirstEntry = false;
    }
  }
  content += '});\n';

  return content;
}

function notModified(requestHeaders, responseHeaders) {
  var lastModified = Date.parse(responseHeaders['last-modified']);
  var modifiedSince = Date.parse(requestHeaders['if-modified-since']);
  return ((requestHeaders['etag'] && requestHeaders['etag'] == responseHeaders['etag'])
      || (lastModified && lastModified <= modifiedSince));
}

/*
  I implement a JavaScript module server.
*/
function Server(options) {
  function trailingSlash(path) {
    if (path && path.charAt(path.length-1) != '/') {
      return path + '/';
    } else {
      return path;
    }
  }
  function leadingSlash(path) {
    if (path && path.charAt(0) != '/') {
      return '/' + path;
    } else {
      return path;
    }
  }

  if (options.rootURI) {
    this._rootURI = trailingSlash(options.rootURI);
    validateURI(this._rootURI);
    if (options['rootPath'] || options['rootPath'] == '') {
      this._rootPath = options.rootPath.toString();
    } else {
      this._rootPath = 'root';
    }
    this._rootPath = leadingSlash(trailingSlash(this._rootPath));
  }

  if (options.libraryURI) {
    this._libraryURI = trailingSlash(options.libraryURI);
    validateURI(this._rootURI);
    if (options['libraryPath'] || options['libraryPath'] == '') {
      this._libraryPath = options.libraryPath.toString();
    } else {
      this._libraryPath = 'library';
    }
    this._libraryPath = leadingSlash(trailingSlash(this._libraryPath));
  }

  if (this._rootPath && this._libraryPath
      && (this._rootPath.indexOf(this._libraryPath) == 0
        || this._libraryPath.indexOf(this._rootPath) == 0)) {
    throw "The paths " + JSON.stringify(this._rootPath) + " and " +
        JSON.stringify(this._libraryPath) + " are ambiguous.";
  }

  if (options.baseURI) {
    this._baseURI = trailingSlash(options.baseURI);
  }
}
Server.prototype = new function () {
  function _resourceURIForModulePath(path) {
    if (path.charAt(0) == '/') {
      return this._rootURI + path.slice(1);
    } else {
      return this._libraryURI + path;
    }
  }

  function setAssociator(associator) {
    this._associator = associator;
  }

  function handle(request, response, next) {
    var url = require('url').parse(request.url, true);
    var path = normalizePath(url.pathname);

    var modulePath;
    if (path.indexOf(this._rootPath) == 0) {
      modulePath = '/' + path.slice(this._rootPath.length);
    } else if (this._libraryURI && path.indexOf(this._libraryPath) == 0) {
      modulePath = path.slice(this._libraryPath.length);
    } else {
      // Something has gone wrong.
    }

    var requestHeaders = mixin({
          'user-agent': 'yajsml'
        , 'accept': '*/*'
        }
      , selectProperties(
          request.headers
        , ['if-modified-since', 'cache-control']
        )
      );

    if (request.method != 'HEAD' && request.method != 'GET') {
      // I don't know how to do this.
      response.writeHead(405, {
        'allow': 'HEAD, GET'
      , 'content-type': 'text/plain; charset=utf-8'
      });
      response.write("405: Only the HEAD or GET methods are allowed.");
      response.end();
    } else if (!modulePath) {
      if (next) {
        next();
      } else {
        response.writeHead(404, {
          'content-type': 'text/plain; charset=utf-8'
        });
        response.write("404: The requested resource could not be found.");
        response.end();
      }
    } else if (!('callback' in url.query)) {
      // I respond with a straight-forward proxy.
      var resourceURI = this._resourceURIForModulePath(modulePath);
      requestURI(resourceURI, 'GET', requestHeaders,
        function (status, headers, content) {
          var responseHeaders = selectProperties(headers, HEADER_WHITELIST);
          if (status == 200) {
            responseHeaders['content-type'] =
                'application/javascript; charset=utf-8';
          } else if (status == 404) {
            responseHeaders['content-type'] = 'text/plain; charset=utf-8';
            content = "404: The requested resource could not be found.";
          } else {
            if (notModified(requestHeaders, responseHeaders)) {
              status = 304;
            }
            // Don't bother giving useful stuff in these cases.
            delete responseHeaders['content-type'];
            content = undefined;
          }
          response.writeHead(status, responseHeaders);
          if (request.method == 'GET') {
            content && response.write(content);
          }
          response.end();
        }
      );
    } else {
      var JSONPCallback = url.query['callback'];
      if (JSONPCallback.length == 0) {
        response.writeHead(400, {
          'content-type': 'text/plain; charset=utf-8'
        });
        response.write("400: The parameter `callback` must be non-empty.")
        response.end();
        return;
      } else if (!JSONPCallback.match(JSONP_CALLBACK_EXPRESSION)) {
        response.writeHead(400, {
          'content-type': 'text/plain; charset=utf-8'
        });
        response.write("400: The parameter `callback` must match "
            + JSONP_CALLBACK_EXPRESSION + ".")
        response.end();
      }

      var respond = function (status, headers, content) {
        var responseHeaders = selectProperties(headers, HEADER_WHITELIST);
        responseHeaders['content-type'] =
            'application/javascript; charset=utf-8';
        // JSONP requires a guard against incorrect sniffing.
        responseHeaders['x-content-type-options'] = 'nosniff';

        if (status == 304 || notModified(requestHeaders, responseHeaders)) {
          response.writeHead(304, responseHeaders);
        } else {
          response.writeHead(200, responseHeaders);
          if (request.method == 'GET') {
            content && response.write(content);
          }
        }
        response.end();
      };

      var modulePaths = [modulePath];
      var preferredPath = modulePath;
      if (this._associator) {
        if (this._associator.preferredPath) {
          preferredPath = this._associator.preferredPath(preferredPath);
        }
        modulePaths = this._associator.associatedModulePaths(modulePath);
      }

      if (preferredPath != modulePath) {
        var location;
        if (preferredPath.charAt(0) == '/') {
          location = this._rootPath + preferredPath.slice(1);
        } else {
          location = this._libraryPath + preferredPath;
        }

        if (this._baseURI) { // Full URIs for location are opt-in.
          location = this._baseURI + location;
        } else {
          location = relativePath(
            location
          , path.split('/').slice(0,-1).join('/')
          );
        }
        location += '?' + require('querystring').stringify(url.query);

        response.writeHead(307, {
          'Content-Type': 'text/plain; charset=utf-8'
        , 'Location': location
        });
        response.write("307: Resource moved temporarily.");
        response.end();
        return;
      }

      var self = this;
      var resourceURIs = modulePaths.map(function (modulePath) {
        return self._resourceURIForModulePath(modulePath);
      });

      requestURIs(resourceURIs, 'HEAD', requestHeaders,
        function (statuss, headerss, contents) {
          var status = statuss.reduce(function (m, s) {
            return m && m == s ? m : undefined;
          });
          var headers = mergeHeaders.apply(this, headerss);
          if (status == 304 || notModified(requestHeaders, headers)) {
            respond(304, headers);
          } else if (request.method == 'HEAD' && status != 405) {
            // If HEAD wasn't implemented I must GET, else I can guarantee that
            // my response will not be a 304 and will be 200.
            respond(status, headers);
          } else {
            // HEAD was not helpful, so issue a GET and remove headers that
            // would yield a 304, we need full content for each resource.
            requestHeadersForGet = selectProperties(requestHeaders
                , ['user-agent', 'accept', 'cache-control']);
            requestURIs(resourceURIs, 'GET', requestHeadersForGet,
              function (statuss, headerss, contents) {
                var status = statuss.reduce(function (m, s) {
                  return m && m == s ? m : undefined;
                });
                var headers = mergeHeaders.apply(this, headerss);
                var moduleMap = {};
                for (var i = 0, ii = contents.length; i < ii; i++) {
                  moduleMap[modulePaths[i]] =
                      statuss[i] == 200 ? contents[i] : null;
                }
                var content = packagedDefine(JSONPCallback, moduleMap);
                if (request.method == 'HEAD') {
                  // I'll respond with no content
                  respond(status, headers);
                } else if (request.method == 'GET') {
                  respond(status, headers, content);
                }
              }
            );
          }
        }
      );
    }
  }

  this._resourceURIForModulePath = _resourceURIForModulePath;
  this.setAssociator = setAssociator;
  this.handle = handle;
}();

exports.Server = Server;


text:
class Types::ConventionsPaginationType < Types::PaginationType
  entries_field Types::ConventionType
end

redpajama_set_name: RedPajamaGithub


text:
- [Our API documentation](https://naturalhistorymuseum.github.io/dataportal-docs)
- [CKAN documentation](http://docs.ckan.org/en/latest)

## Contact Us
- [Gitter](https://gitter.im/nhm-data-portal/lobby)
- [Email _data@nhm.ac.uk_](mailto:data@nhm.ac.uk)
- [Twitter](https://twitter.com/nhm_data)


text:
#import "FIRDocumentSnapshot.h"

#include <memory>

#include "Firestore/core/src/api/api_fwd.h"
#include "Firestore/core/src/model/model_fwd.h"

@class FIRFirestore;

namespace api = firebase::firestore::api;
namespace model = firebase::firestore::model;

NS_ASSUME_NONNULL_BEGIN

@interface FIRDocumentSnapshot (/* Init */)

- (instancetype)initWithSnapshot:(api::DocumentSnapshot &&)snapshot NS_DESIGNATED_INITIALIZER;

- (instancetype)initWithFirestore:(FIRFirestore *)firestore
                      documentKey:(model::DocumentKey)documentKey
                         document:(const absl::optional<model::Document> &)document
                         metadata:(api::SnapshotMetadata)metadata;

- (instancetype)initWithFirestore:(FIRFirestore *)firestore
                      documentKey:(model::DocumentKey)documentKey
                         document:(const absl::optional<model::Document> &)document
                        fromCache:(bool)fromCache
                 hasPendingWrites:(bool)hasPendingWrites;

@end

/** Internal FIRDocumentSnapshot API we don't want exposed in our public header files. */
@interface FIRDocumentSnapshot (Internal)

- (const absl::optional<model::Document> &)internalDocument;

@end

NS_ASSUME_NONNULL_END


text:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using AspNetCore.Identity.Neo4j;
using Microsoft.AspNetCore.Identity;

namespace IdentitySample.Mvc.Data
{
    // Add profile data for application users by adding properties to the ApplicationUser class
    public class ApplicationUser : Neo4jIdentityUser
    {
    }
}


text:
#ifndef TINYFILEDIALOGS_H
#define TINYFILEDIALOGS_H

/* #define TINYFD_NOLIB */
/* On windows, define TINYFD_NOLIB here
if you don't want to include the code creating the graphic dialogs.
Then you won't need to link against Comdlg32.lib and Ole32.lib */

/* if tinydialogs.c is compiled as C++ code rather than C code,
you may need to comment out:
extern "C" {
and the corresponding closing bracket near the end of this file:
}
*/
#ifdef	__cplusplus
extern "C" {
#endif

extern char tinyfd_version[8]; /* contains tinyfd current version number */
extern int tinyfd_verbose; /* 0 (default) or 1 : on unix, prints the command line calls */
extern char tinyfd_needs[]; /* info about requirements */

#ifdef _WIN32
/* for UTF-16 use the functions at the end of this files */
extern int tinyfd_winUtf8; /* 0 (default MBCS) or 1 (UTF-8)*/
/* on windows string char can be 0:MBCS or 1:UTF-8
unless your code is really prepared for UTF-8 on windows, leave this on MBSC.
Or you can use the UTF-16 (wchar) prototypes at the end of ths file.*/
#endif

extern int tinyfd_forceConsole;  /* 0 (default) or 1 */
/* for unix & windows: 0 (graphic mode) or 1 (console mode).
0: try to use a graphic solution, if it fails then it uses console mode.
1: forces all dialogs into console mode even when an X server is present,
  if the package dialog (and a console is present) or dialog.exe is installed.
  on windows it only make sense for console applications */

extern char tinyfd_response[1024];
/* if you pass "tinyfd_query" as aTitle,
the functions will not display the dialogs
but will return 0 for console mode, 1 for graphic mode.
tinyfd_response is then filled with the retain solution.
possible values for tinyfd_response are (all lowercase)
for graphic mode:
  windows_wchar windows
  applescript kdialog zenity zenity3 matedialog qarma
  python2-tkinter python3-tkinter python-dbus perl-dbus
  gxmessage gmessage xmessage xdialog gdialog
for console mode:
  dialog whiptail basicinput */

void tinyfd_beep();

int tinyfd_notifyPopup(
	char const * const aTitle, /* NULL or "" */
	char const * const aMessage, /* NULL or "" may contain \n \t */
	char const * const aIconType); /* "info" "warning" "error" */
		/* return has only meaning for tinyfd_query */

int tinyfd_messageBox(
	char const * const aTitle , /* NULL or "" */
	char const * const aMessage , /* NULL or "" may contain \n \t */
	char const * const aDialogType , /* "ok" "okcancel" "yesno" "yesnocancel" */
	char const * const aIconType , /* "info" "warning" "error" "question" */
	int const aDefaultButton ) ;
		/* 0 for cancel/no , 1 for ok/yes , 2 for no in yesnocancel */

char const * tinyfd_inputBox(
	char const * const aTitle , /* NULL or "" */
	char const * const aMessage , /* NULL or "" may NOT contain \n \t on windows */
	char const * const aDefaultInput ) ;  /* "" , if NULL it's a passwordBox */
		/* returns NULL on cancel */

char const * tinyfd_saveFileDialog(
	char const * const aTitle , /* NULL or "" */
	char const * const aDefaultPathAndFile , /* NULL or "" */
	int const aNumOfFilterPatterns , /* 0 */
	char const * const * const aFilterPatterns , /* NULL | {"*.jpg","*.png"} */
	char const * const aSingleFilterDescription ) ; /* NULL | "text files" */
		/* returns NULL on cancel */

char const * tinyfd_openFileDialog(
	char const * const aTitle , /* NULL or "" */
	char const * const aDefaultPathAndFile , /* NULL or "" */
	int const aNumOfFilterPatterns , /* 0 */
	char const * const * const aFilterPatterns , /* NULL {"*.jpg","*.png"} */
	char const * const aSingleFilterDescription , /* NULL | "image files" */
	int const aAllowMultipleSelects ) ; /* 0 or 1 */
		/* in case of multiple files, the separator is | */
		/* returns NULL on cancel */

char const * tinyfd_selectFolderDialog(
	char const * const aTitle , /* NULL or "" */
	char const * const aDefaultPath ) ; /* NULL or "" */
		/* returns NULL on cancel */

char const * tinyfd_colorChooser(
	char const * const aTitle , /* NULL or "" */
	char const * const aDefaultHexRGB , /* NULL or "#FF0000" */
	unsigned char const aDefaultRGB[3] , /* { 0 , 255 , 255 } */
	unsigned char aoResultRGB[3] ) ; /* { 0 , 0 , 0 } */
		/* returns the hexcolor as a string "#FF0000" */
		/* aoResultRGB also contains the result */
		/* aDefaultRGB is used only if aDefaultHexRGB is NULL */
		/* aDefaultRGB and aoResultRGB can be the same array */
		/* returns NULL on cancel */

/************ NOT CROSS PLATFORM SECTION STARTS HERE ************************/
#ifdef _WIN32
#ifndef TINYFD_NOLIB

/* windows only - utf-16 version */
int tinyfd_notifyPopupW(
	wchar_t const * const aTitle, /* NULL or L"" */
	wchar_t const * const aMessage, /* NULL or L"" may contain \n \t */
	wchar_t const * const aIconType); /* L"info" L"warning" L"error" */

/* windows only - utf-16 version */
int tinyfd_messageBoxW(
	wchar_t const * const aTitle , /* NULL or L"" */
	wchar_t const * const aMessage, /* NULL or L"" may contain \n \t */
	wchar_t const * const aDialogType, /* L"ok" L"okcancel" L"yesno" */
	wchar_t const * const aIconType, /* L"info" L"warning" L"error" L"question" */
	int const aDefaultButton ); /* 0 for cancel/no , 1 for ok/yes */
		/* returns 0 for cancel/no , 1 for ok/yes */

/* windows only - utf-16 version */
wchar_t const * tinyfd_inputBoxW(
	wchar_t const * const aTitle, /* NULL or L"" */
	wchar_t const * const aMessage, /* NULL or L"" may NOT contain \n nor \t */
	wchar_t const * const aDefaultInput ); /* L"" , if NULL it's a passwordBox */

/* windows only - utf-16 version */
wchar_t const * tinyfd_saveFileDialogW(
	wchar_t const * const aTitle, /* NULL or L"" */
	wchar_t const * const aDefaultPathAndFile, /* NULL or L"" */
	int const aNumOfFilterPatterns, /* 0 */
	wchar_t const * const * const aFilterPatterns, /* NULL or {L"*.jpg",L"*.png"} */
	wchar_t const * const aSingleFilterDescription); /* NULL or L"image files" */
		/* returns NULL on cancel */

/* windows only - utf-16 version */
wchar_t const * tinyfd_openFileDialogW(
	wchar_t const * const aTitle, /* NULL or L"" */
	wchar_t const * const aDefaultPathAndFile, /* NULL or L"" */
	int const aNumOfFilterPatterns , /* 0 */
	wchar_t const * const * const aFilterPatterns, /* NULL {L"*.jpg",L"*.png"} */
	wchar_t const * const aSingleFilterDescription, /* NULL or L"image files" */
	int const aAllowMultipleSelects ) ; /* 0 or 1 */
		/* in case of multiple files, the separator is | */
		/* returns NULL on cancel */

/* windows only - utf-16 version */
wchar_t const * tinyfd_selectFolderDialogW(
	wchar_t const * const aTitle, /* NULL or L"" */
	wchar_t const * const aDefaultPath); /* NULL or L"" */
		/* returns NULL on cancel */

/* windows only - utf-16 version */
wchar_t const * tinyfd_colorChooserW(
	wchar_t const * const aTitle, /* NULL or L"" */
	wchar_t const * const aDefaultHexRGB, /* NULL or L"#FF0000" */
	unsigned char const aDefaultRGB[3] , /* { 0 , 255 , 255 } */
	unsigned char aoResultRGB[3] ) ; /* { 0 , 0 , 0 } */
		/* returns the hexcolor as a string L"#FF0000" */
		/* aoResultRGB also contains the result */
		/* aDefaultRGB is used only if aDefaultHexRGB is NULL */
		/* aDefaultRGB and aoResultRGB can be the same array */
		/* returns NULL on cancel */

#endif /*TINYFD_NOLIB*/
#else /*_WIN32*/

/* unix zenity only */
char const * tinyfd_arrayDialog(
	char const * const aTitle , /* NULL or "" */
	int const aNumOfColumns , /* 2 */
	char const * const * const aColumns, /* {"Column 1","Column 2"} */
	int const aNumOfRows, /* 2 */
	char const * const * const aCells);
		/* {"Row1 Col1","Row1 Col2","Row2 Col1","Row2 Col2"} */

#endif /*_WIN32 */

#ifdef	__cplusplus
}
#endif

#endif /* TINYFILEDIALOGS_H */

/*
- This is not for android nor ios.
- The code is pure C, perfectly compatible with C++.
- the windows only wchar_t (utf-16) prototypes are in the header file
- windows is fully supported from XP to 10 (maybe even older versions)
- C# & LUA via dll, see example files
- OSX supported from 10.4 to latest (maybe even older versions)
- Avoid using " and ' in titles and messages.
- There's one file filter only, it may contain several patterns.
- If no filter description is provided,
  the list of patterns will become the description.
- char const * filterPatterns[3] = { "*.obj" , "*.stl" , "*.dxf" } ;
- On windows char defaults to MBCS, set tinyfd_winUtf8=1 to use UTF-8
- On windows link against Comdlg32.lib and Ole32.lib
  This linking is not compulsary for console mode (see above).
- On unix: it tries command line calls, so no such need.
- On unix you need one of the following:
  applescript, kdialog, zenity, matedialog, shellementary, qarma,
  python (2 or 3)/tkinter/python-dbus (optional), Xdialog
  or dialog (opens terminal if running without console) or xterm.
- One of those is already included on most (if not all) desktops.
- In the absence of those it will use gdialog, gxmessage or whiptail
  with a textinputbox.
- If nothing is found, it switches to basic console input,
  it opens a console if needed (requires xterm + bash).
- Use windows separators on windows and unix separators on unix.
- String memory is preallocated statically for all the returned values.
- File and path names are tested before return, they are valid.
- If you pass only a path instead of path + filename,
  make sure it ends with a separator.
- tinyfd_forceConsole=1; at run time, forces dialogs into console mode.
- On windows, console mode only make sense for console applications.
- On windows, Console mode is not implemented for wchar_T UTF-16.
- Mutiple selects are not allowed in console mode.
- The package dialog must be installed to run in enhanced console mode.
  It is already installed on most unix systems.
- On osx, the package dialog can be installed via
  http://macappstore.org/dialog or http://macports.org
- On windows, for enhanced console mode,
  dialog.exe should be copied somewhere on your executable path.
  It can be found at the bottom of the following page:
  http://andrear.altervista.org/home/cdialog.php
- If dialog is missing, it will switch to basic console input.
- You can query the type of dialog that will be use.
- MinGW needs gcc >= v4.9 otherwise some headers are incomplete.
- The Hello World (and a bit more) is on the sourceforge site:
*/


text:
import Helper from '@ember/component/helper';
import moment from 'moment';

export default Helper.extend({
  compute(params) {
    const online = params[0];
    const timeStamp = params[1];
    let dateString;

    if (online) {
      dateString = '';
    } else if (timeStamp === -1) {
      dateString = 'never';
    } else {
      dateString = moment.unix(timeStamp).fromNow(true);
    }

    return dateString;
  }
});


text:
// C++ informative line for the emacs editor: -*- C++ -*-

#ifndef __H5FloatType_H
#define __H5FloatType_H

namespace H5 {

/*! \class FloatType
    \brief FloatType is a derivative of a DataType and operates on HDF5
    floating point datatype.
*/
//  Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP FloatType : public AtomType {
   public:
        // Creates a floating-point type using a predefined type.
        FloatType(const PredType& pred_type);

        // Gets the floating-point datatype of the specified dataset.
        FloatType(const DataSet& dataset);

        // Constructors that open an HDF5 float datatype, given a location.
        FloatType(const H5Location& loc, const char* name);
        FloatType(const H5Location& loc, const H5std_string& name);

        // Returns an FloatType object via DataType* by decoding the
        // binary object description of this type.
        virtual DataType* decode() const;

        // Retrieves the exponent bias of a floating-point type.
        size_t getEbias() const;

        // Sets the exponent bias of a floating-point type.
        void setEbias(size_t ebias) const;

        // Retrieves floating point datatype bit field information.
        void getFields(size_t& spos, size_t& epos, size_t& esize, size_t& mpos, size_t& msize) const;

        // Sets locations and sizes of floating point bit fields.
        void setFields(size_t spos, size_t epos, size_t esize, size_t mpos, size_t msize) const;

        // Retrieves the internal padding type for unused bits in floating-point datatypes.
        H5T_pad_t getInpad(H5std_string& pad_string) const;

        // Fills unused internal floating point bits.
        void setInpad(H5T_pad_t inpad) const;

        // Retrieves mantissa normalization of a floating-point datatype.
        H5T_norm_t getNorm(H5std_string& norm_string) const;

        // Sets the mantissa normalization of a floating-point datatype.
        void setNorm(H5T_norm_t norm) const;

        ///\brief Returns this class name.
        virtual H5std_string fromClass () const { return("FloatType"); }

        // Default constructor
        FloatType();

        // Creates a floating-point datatype using an existing id.
        FloatType(const hid_t existing_id);

        // Copy constructor: same as the original FloatType.
        FloatType(const FloatType& original);

        // Noop destructor.
        virtual ~FloatType();

}; // end of FloatType
} // namespace H5

#endif // __H5FloatType_H


text:
"""This code example archives ad units.

The parent ad unit and all ad units underneath it will be archived. To create ad
units, run create_ad_units.py.

The LoadFromStorage method is pulling credentials and properties from a
"googleads.yaml" file. By default, it looks for this file in your home
directory. For more information, see the "Caching authentication information"
section of our README.

Tags: InventoryService.getAdUnitsByStatement
"""

__author__ = ('Nicholas Chen',
              'Joseph DiLallo')

# Import appropriate modules from the client library.
from googleads import dfp

PARENT_AD_UNIT_ID = 'INSERT_AD_UNIT_ID_HERE'

def main(client, parent_id):
  # Initialize appropriate service.
  inventory_service = client.GetService('InventoryService', version='v201505')

  # Create a query to select ad units under the parent ad unit and the parent ad
  # unit.
  values = [{
      'key': 'parentId',
      'value': {
          'xsi_type': 'NumberValue',
          'value': parent_id
      }
  }]
  query = 'WHERE parentId = :parentId or id = :parentId'
  statement = dfp.FilterStatement(query, values)

  ad_units_archived = 0

  # Get ad units by statement.
  while True:
    response = inventory_service.getAdUnitsByStatement(
        statement.ToStatement())
    if 'results' in response:
      for ad_unit in response['results']:
        print ('Ad unit with ID \'%s\' and name \'%s\' will be archived.'
               % (ad_unit['id'], ad_unit['name']))
      # Perform action.
      result = inventory_service.performAdUnitAction(
          {'xsi_type': 'ArchiveAdUnits'}, statement.ToStatement())
      if result and int(result['numChanges']) > 0:
        ad_units_archived += int(result['numChanges'])
      statement.offset += dfp.SUGGESTED_PAGE_LIMIT
    else:
      break

  # Display results.
  if ad_units_archived > 0:
    print 'Number of ad units archived: %s' % ad_units_archived
  else:
    print 'No ad units were archived.'

if __name__ == '__main__':
  # Initialize client object.
  dfp_client = dfp.DfpClient.LoadFromStorage()
  main(dfp_client, PARENT_AD_UNIT_ID)


text:
{% extends "layout.html" %}
{% block title %}
<title>Edit {{ mod.name }} on {{ site_name }}</title>
{% endblock %}
{% block styles %}
<link rel="stylesheet" type="text/css" href="{{ path_for('styles', {'filename': 'mod.css'}) }}" />
<link rel="stylesheet" type="text/css" href="{{ path_for('styles', {'filename': 'stylesheet.css'}) }}" />
<link rel="stylesheet" type="text/css" href="{{ path_for('styles', {'filename': 'typeahead.css'}) }}" />
<link rel="stylesheet" type="text/css" href="{{ path_for('styles', {'filename': 'navigation.css'}) }}" />
<link rel="stylesheet" type="text/css" href="{{ path_for('styles', {'filename': 'timeline.css'}) }}" />
<link rel="stylesheet" type="text/css" href="{{ path_for('styles', {'filename': 'listing.css'}) }}" />
{% endblock %}
{% block scripts %}

{% endblock %}
{% block body %}
<form action="{{ url_for("mods.edit_mod", id=mod.id, mod_name=mod.name) }}" method="POST">

        Click to upload header
        <input type="file">

Click and drag to move

    <input type="hidden" name="background" id="background" value="{%if mod.background %}{{ mod.background }}{% endif %}">
    <input type="hidden" name="bg-offset-y" id="bg-offset-y" value="{% if mod.bgOffsetY %}{{ mod.bgOffsetY }}{% endif %}">

    {% if error %}

{{ error }}

    {% endif %}

Edit {{ mod.name }}

                <input type="submit" class="btn btn-primary btn-block" value="Save Changes" />

                Cancel

        <input type="text" class="form-control input-block-level" name="short-description" value="{{ mod.short_description }}" placeholder="Short description..." />

                                            License:

                                        <input type="text" class="form-control" name="license" value="{{ mod.license }}">

                                            Donation Link:

                                        <input type="text" class="form-control" name="donation-link" value="{%if mod.donation_link%}{{ mod.donation_link }}{%endif%}" />

                                            Mod Website:

                                        <input type="text" class="form-control" name="external-link" value="{%if mod.external_link %}{{ mod.external_link }}{%endif%}">

                                            Source Code:

                                        <input type="text" class="form-control" name="source-link" value="{%if mod.source_link%}{{ mod.source_link }}{%endif%}" />

    {% if original or user.admin %}

Additional Authors

Each of these people has permission to edit your mod listing and publish updates.

                {% for author in mod.shared_authors %}

                    {{ author.user.username }}
                    {% if not author.accepted %}
                    (pending)
                    {% else %}

                    {% endif %}

                {% endfor %}

                        <input type="text" class="form-control" id="new-shared-author" placeholder="Username" />

                        Add

    {% endif %}

            Markdown is supported here.
            {% if not mod.ckan %}

                <input id="ckan" name="ckan" style="margin-top: 8px;" type="checkbox"> Add mod to CKAN

            {% endif %}

        <textarea class="form-control input-block-level" name="description" id="description" rows=25>{{ mod.description }}</textarea>

</form>
{% endblock %}


text:
Share Link Creator
==================

Provides the ability to upload a file to Nextcloud via a supported file manager
and receive a link to the uploaded file which can then be emailed or shared in
another way.

This script can be integrated in the Thunar file manager as a "custom
action". The program should also works with other file managers which provide
similar possibilities to integrate shell scripts. I developed and used this
script with Thunar only but I got some feedback that it also works nicely with
Dolphin, Nautilus and Nemo.

The program expects the absolute path to the files.  Once the custom action is
configured you can execute the program from the right-click context menu. The
program works for all file types and also for directories. Once the script gets
executed it will first upload the files/directories to your Nextcloud and
afterwards it will generate a public link to access them. The link will be
copied directly to your clipboard and a dialog will inform you about the
URL. If you uploaded a single file or directory than the file/directory will be
created directly below your "uploadTarget" as defined below. If you selected
multiple files, than the programm will group them together in a directory named
with the current timestamp.

Requirements
------------

- curl
- xclip
- zenity

Configuration
-------------

Before you can use the program you need to adjust at least the "baseURL" at
"config.sample" and rename the file to "config". If you keep "username" and/or
"password" empty a dialog will show up and ask for the credentials.

Installing with Thunar (Xfce)
-----------------------------

Start Thunar and go to "Edit->Configure Custom Actions...". Here you can add a
action to execute the shareLinkCreator. Make sure to pass the "%F" parameter
(paths to all selected files) to the program. Under "Appearance Conditions" you
can enable all file types.

Installing with Nemo (Linux Mint / Cinnamon)
--------------------------------------------

You will need to copy the shareLinkCreator.nemo_action to:

    ~/.local/share/nemo/actions/

Next edit the file, and replace

    Exec=/path/to/shareLinkCreator/shareLinkCreator %F

With the full path to the shareLinkCreator file, and voila!  Make sure you have
configured the shareLinkCreator file as instructed above.


text:
<?php
namespace Rocketeer\Plugins\Laravel\Binaries;

use Rocketeer\Binaries\AbstractBinary;
use Rocketeer\Binaries\Php;
use Rocketeer\Services\Container\Container;

class Artisan extends AbstractBinary
{
    /**
     * @param Container $container
     */
    public function __construct(Container $container)
    {
        parent::__construct($container);

        // Set PHP as parent
        $this->setParent(new Php($this->container));
    }

    /**
     * Get an array of default paths to look for
     *
     * @return string[]
     */
    protected function getKnownPaths()
    {
        return [
            'artisan',
            $this->releasesManager->getCurrentReleasePath().'/artisan',
        ];
    }

    /**
     * Run outstranding migrations
     *
     * @return string
     */
    public function migrate()
    {
        return $this->getCommand('migrate', [], ['--force']);
    }

    /**
     * Seed the database
     *
     * @return string
     */
    public function seed()
    {
        return $this->getCommand('db:seed', [], ['--force']);
    }

    /**
     * Clear the cache
     *
     * @return string
     */
    public function clearCache()
    {
        return $this->getCommand('cache:clear');
    }
}


text:
package com.truyayong.oldhouse.content.widget;

import android.content.Context;
import android.graphics.drawable.ColorDrawable;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.PopupWindow;

import com.truyayong.oldhouse.R;

/**
 * Created by alley_qiu on 2017/2/24.
 */

public class ListItemMenu extends PopupWindow {
    private Context mContext ;
    private LinearLayout quit,share;

    public ListItemMenu(int width, int height, Context mContext) {
        super(width, height);
        this.mContext = mContext;
        InitView();
    }

    private void InitView() {
        View view = LayoutInflater.from(mContext).inflate(R.layout.item_menu, null);
        setContentView(view);
        setFocusable(true);
        setBackgroundDrawable(new ColorDrawable(00000000));
        quit = (LinearLayout) view.findViewById(R.id.hidequestion);
        share = (LinearLayout) view.findViewById(R.id.share);
        quit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                dismiss();
            }
        });

        share.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                dismiss();
            }
        });
    }
}


text:
<title>fsa file format</title>

fsa file format

header	256 bytes

symbol table	size bytes

state table	size*4 bytes

data table	data_size bytes

perfect hahs table (optional)	size*4 bytes

header

field	offset	size	descrption

magic	0	4 (uint32)	Magic number (0x79832469)

version	4	4 (uint32)	Version number of
the fsa library used for building this fsa

checksum	8	4 (uint32)	Checksum

size	12	4 (uint32)	Size of fsa (cells)

start	16	4 (uint32)	Start state

data_size	20	4 (uint32)	Size of data (bytes)

data_type	24	4 (uint32)	Type of data
items (0=variable size, 1=fixed size)

fixed_data_size	28	4 (uint32)	Data item size if fixed

has_perfect_hash	32	4
(uint32)	Indicator for perfect hash (0=no, 1=yes)

serial	36	4 (uint32)	Serial number

reserved	40	216 (54*uint32)	Reserved (pads size to 256 bytes)

symbol table and state table

The symbol table and state table contain the transitions of the
automaton, each 1-byte entry in the symbol table corresponds to an
uint32 entry in the state table. For each state, a list of at most 254
transistions is stored, as the symbol set is 8-bit characters, with
0x00 and 0xff reserved. Each state id is in fact an offset into these
tables. For a given state state, there exists a valid
transition for symbol sym if the symbol table contains
sym at offset state+sym. 0x00 means the
cell is empty, 0xff is a special symbol meaning that the given state
is a final state, anything else means invalid transition (i.e. the
cell is in use by some other state). For valid transitions, the
corresponding entry in the state table yields the next state. For 0xff
transitions, the state table entry contains the offset of the date
item within the data store.

data store

The data store contains the data items for the final states. The 'new
state' entry of a final state transition in the state table (corresponding to the
special final state symbol 0xff) contains the data store offset of the data item
corresponding to that final state. If fixed size items are used, each
item takes fixed_data_size bytes as defined in the header. Variable
size items take 4 bytes (uint32 item_size) plus item_size
bytes. The size of the data store is given in the header.

perfect hash table

The perfect hash table has one uint32 entry for each transition in the
symbol/state table, thus the size of the perfect hash table equals the
size of the state table. The perfect hash value for a final state is
calculated by adding all values in this table for the transitions
along the path from the start state to the final state.


text:
FILE(REMOVE_RECURSE
  "CMakeFiles/mouse_reader_generate_messages_py"
  "/home/tudeng/Kruus-robtech/devel/lib/python2.7/dist-packages/mouse_reader/msg/_Mouse.py"
  "/home/tudeng/Kruus-robtech/devel/lib/python2.7/dist-packages/mouse_reader/msg/__init__.py"
)

# Per-language clean rules from dependency scanning.
FOREACH(lang)
  INCLUDE(CMakeFiles/mouse_reader_generate_messages_py.dir/cmake_clean_${lang}.cmake OPTIONAL)
ENDFOREACH(lang)


text:
/* Typography -----------------------------------------------  */
.ct-heading a i,
.ct-heading a:hover {
  color: #ff7f00;
}
.ct-u-text--motive {
  color: #ff7f00;
}
.popover .popover-title {
  background-color: #ff7f00;
}
.ct-blockquote--testimonials,
.ct-blockquote--background {
  border-left: 2px solid #ff7f00;
}
table > thead > tr > th {
  background-color: #ff7f00;
}
.datepicker table > thead > tr > th.dow {
  background-color: #e6e6e6;
}
.datepicker table > thead > tr > .prev,
.datepicker table > thead > tr > .next {
  color: #ff7f00;
}
.datepicker table tr td.active,
.datepicker table tr td.today,
.datepicker table tr td.active:hover,
.datepicker table tr td.today:hover {
  background-color: #ff7f00!important;
}
.ct-counterBox .ct-counterBox--body .ct-counter {
  color: #ff7f00;
}
.panel-default .panel-heading a:before,
.panel-success .panel-heading a:before,
.panel-danger .panel-heading a:before,
.panel-warning .panel-heading a:before,
.panel-info .panel-heading a:before {
  color: #ff7f00;
}
.panel-default .panel-heading a:hover,
.panel-success .panel-heading a:hover,
.panel-danger .panel-heading a:hover,
.panel-warning .panel-heading a:hover,
.panel-info .panel-heading a:hover {
  color: #ff7f00;
}
.nav-tabs li.active a,
.nav-tabs.nav-justified li.active a {
  background-color: #ff7f00;
}
.tab-content .tab-pane {
  border-top: 2px solid #ff7f00;
}
.ct-testimonials .tab-content .tab-pane {
  border-top: transparent;
}
.nav-tabs li a:hover,
.nav-tabs.nav-justified li a:hover {
  background-color: #ff7f00;
}
.progress-bar-primary {
  background-color: #ff7f00;
}
.list-group .active {
  background-color: #ff7f00;
  border-color: #ff7f00;
}
.btn:hover {
  background-color: #ff7f00;
  border-color: #ff7f00;
  color: #fff;
}
.btn-primary {
  background-color: #ff7f00;
  border-color: #ff7f00;
  color: #fff;
}
.btn-primary:hover {
  background-color: #333;
  border-color: #333;
  color: #fff;
}
.btn-transparent--border.active {
  background-color: #ff7f00;
  border-color: #ff7f00;
}
.btn-transparent--border {
  background-color: transparent;
}
.btn-transparent--border.btn-primary {
  border-color: #ff7f00;
  color: #ff7f00;
}
.btn-transparent--border.btn-primary:hover {
  background-color: #ff7f00;
  border-color: #ff7f00;
  color: #fff;
}
/* Topbar -----------------------------------------------  */
.ct-topBar a:hover {
  color: #ff7f00;
}
.ct-topBar--darkStyle a:hover i {
  color: #ff7f00;
}
/* Language switcher -----------------------------------------------  */
.ct-switcher--language li a:hover {
  color: #ff7f00;
  background-color: rgba(255, 127, 0, 0.1);
}
.ct-switcher--language .dropdown-menu li a:hover {
  color: #fff;
}
.ct-switcher--language .dropdown-menu li a:hover {
  background-color: #ff7f00;
}
.ct-switcher--language .dropdown-menu li:first-child a:hover:before {
  border-color: transparent transparent #ff7f00 transparent;
}
/* Navbar -----------------------------------------------  */
.ct-panel--text a {
  color: #ff7f00;
}
.ct-panel--text a:hover {
  color: #333;
}
.ct-socials--circle {
  background-color: #ff7f00;
}
.ct-socials--circle:hover {
  background-color: #333;
}
.caret {
  border-top: 3px solid #ff7f00;
}
.navbar .navbar-nav .active > a {
  color: #ff7f00;
  background-color: rgba(255, 127, 0, 0.1);
}
.onepager .navbar .navbar-nav .active > a {
  color: #ff7f00;
  background-color: transparent;
}
.navbar .navbar-nav .active > a:after {
  background-color: #ff7f00;
}
.navbar .navbar-nav li:hover > a,
.navbar .navbar-nav li:focus > a {
  color: #ff7f00;
  background-color: rgba(255, 127, 0, 0.1);
}
.onepager .navbar .navbar-nav li:hover > a,
.navbar .navbar-nav li:focus > a {
  color: #ff7f00;
  background-color: transparent;
}
.navbar .navbar-nav .dropdown > a:hover:after {
  background-color: #ff7f00;
}
.navbar .navbar-nav li .dropdown-menu li:first-child > a:hover:before,
.navbar .navbar-nav li .dropdown-menu .yamm-content ul li:first-child > a:hover:before {
  border-color: transparent transparent #ff7f00 transparent;
}
.navbar .navbar-nav li .dropdown-menu .yamm-content ul li a:hover,
.navbar .navbar-nav li .dropdown-menu a:hover {
  background-color: #ff7f00;
  color: #fff;
}
.ct-navbar--noDecoration .navbar-nav .active > a:after,
.ct-navbar--noDecoration .navbar-nav .dropdown > a:hover:after {
  background-color: transparent;
}
/* Slider -----------------------------------------------  */
.ct-owl--description .ct-owl--description--inner .ct-owl--descriptionItem span {
  color: #ff7f00;
}
.ct-owl-controls--type2 .owl-controls .owl-buttons div,
.ct-owl-controls--type3 .owl-controls .owl-buttons div {
  color: #ff7f00;
}
/* Forms, Label -----------------------------------------------  */
.ct-form--label--type1,
.ct-form--label--type2,
.ct-form--label--type3 {
  background-color: #ff7f00;
}
.slider.slider-horizontal .slider-track .slider-selection,
.slider.slider-horizontal .slider-handle,
.tooltip-inner {
  background: #ff7f00;
}
.tooltip.top .tooltip-arrow {
  border-top-color: #ff7f00;
}
.select2-drop .select2-highlighted {
  background-color: #ff7f00;
}
.select2-drop .select2-highlighted:before {
  border-color: transparent transparent #ff7f00 transparent !important;
}
.ct-contactForm--small .form-control:focus {
  border: 2px solid #ff7f00;
}
.ct-calculator--whiteStyle form .form-control:focus {
  border: 2px solid #ff7f00 !important;
}
.ct-footer--extended .ct-form--label--type1 i,
.ct-footer--extended .ct-form--label--type2 i,
.ct-footer--extended .ct-form--label--type3 i {
  color: #fff;
}
.ct-popupForm form input:focus,
.ct-popupForm form textarea:focus {
  border: 1px solid #ff7f00;
}
.ct-input--border:focus {
  border: 1px solid #ff7f00;
}
.ct-form--label--type1 .ct-input-group-btn .btn,
.ct-form--label--type2 .ct-input-group-btn .btn,
.ct-form--label--type3 .ct-input-group-btn .btn {
  background-color: #dd6e00;
  border-color: #dd6e00;
}
/* Products -----------------------------------------------  */
.ct-itemProducts a:hover,
.ct-itemProducts .ct-product--meta .ct-icons span:hover i,
.ct-itemProducts .ct-product--meta .ct-icons span:hover,
.ct-itemProducts--small a:hover {
  color: #ff7f00;
}
.ct-productMeta--single i,
.ct-productMeta--single a:hover {
  color: #ff7f00;
}
.ct-sortingBar ul .is-active {
  background-color: #ff7f00;
}
.ct-sortingBar ul .is-active a:hover {
  color: #fff;
}
.ct-showElements a:hover {
  color: #ff7f00;
}
.pagination .active a,
.pagination li a:hover {
  background-color: #ff7f00;
}
/* Blog -----------------------------------------------  */
.ct-articleBox .ct-articleBox-titleBox a:hover {
  color: #ff7f00;
}
.ct-articleBox .ct-articleBox-titleBox .ct-articleComments a {
  color: #ff7f00;
}
.ct-articleBox .ct-articleBox-titleBox .ct-articleComments a:hover,
.ct-articleBox .ct-articleBox-description a:hover {
  color: inherit;
}
.ct-articleBox .ct-articleBox-description a {
  color: #ff7f00;
}
.ct-calendar--day .ct-day {
  background-color: #ff7f00;
}
/* Icon Boxes -----------------------------------------------  */
.ct-iconContainer--circle {
  background-color: #ff7f00;
}
.ct-iconContainer--circle:before {
  border: 3px solid #ff7f00;
}
.ct-iconBox:hover .ct-iconContainer--circle i {
  color: #ff7f00;
}
.ct-iconBox .ct-iconContainer--circleLight,
.ct-iconBox .ct-iconContainer--circleLight i {
  background-color: transparent;
  color: #ff7f00;
}
.ct-iconBox:hover .ct-iconContainer--circleLight:before {
  background-color: #ff7f00;
}
.ct-iconBox:hover .ct-iconContainer--circleLight i {
  color: #fff;
}
/* Footer -----------------------------------------------  */
.ct-footer--extended i,
.ct-footer--extended .ct-phoneNumbers i,
.ct-contactList a {
  color: #ff7f00;
}
.ct-footer--extended .ct-socials--circle i {
  color: #fff;
}
.ct-footer--extended .ct-socials--circle:hover {
  background-color: #fff;
}
.ct-footer--extended .ct-socials--circle:hover i {
  color: #ff7f00;
}
.ct-sectioButton--square {
  background-color: #ff7f00;
}
.ct-sectioButton--square:hover {
  background-color: #fff;
}
.ct-sectioButton--square:hover i {
  color: #ff7f00;
}
.ct-footer--light .ct-footer--extended .ct-contactList a {
  color: #ff7f00;
}
.ct-footer--light .ct-footer--extended .ct-contactList a:hover {
  color: inherit;
}
.ct-links a:hover {
  color: #ff7f00;
}
/* Google Maps -----------------------------------------------  */
.ct-zoom--in:hover,
.ct-zoom--out:hover,
.ct-geolocationButton:hover {
  background-color: #ff7f00;
}
.ct-geolocationButton:hover {
  border: 2px solid #ff7f00;
}
.ct-searchGmaps:focus {
  border: 1px solid #ff7f00;
}
.ct-gmapProduct .ct-bottomArrow {
  border: 3px solid #ff7f00;
}
.ct-gmapProduct .ct-bottomArrow:before {
  border-color: #ff7f00 transparent transparent transparent;
}
/* Person Box -----------------------------------------------  */
.ct-personBox .ct-personContent .ct-personName a {
  color: #ff7f00;
}
.ct-personBox .ct-personContent .ct-personName a:hover {
  color: inherit;
}
.ct-personBox .ct-personDescription a:hover {
  color: #ff7f00;
}
.widget .ct-personBox .ct-personDescription a {
  color: #ff7f00;
}
.widget .ct-personBox .ct-personDescription a:hover {
  color: inherit;
}
.ct-personBox--extendedFullWidth .ct-personContent .ct-contactPerson a {
  color: #ff7f00;
}
.ct-personBox--extendedFullWidth .ct-personContent .ct-contactPerson a:hover {
  color: inherit;
}
.ct-personBox--extended .ct-personContent .ct-contactPerson a {
  color: #ff7f00;
}
.ct-personBox--extended .ct-personContent .ct-contactPerson a:hover {
  color: inherit;
}
.ct-personBox .ct-personContact input:focus,
.ct-personBox .ct-personContact textarea:focus {
  border: 1px solid #ff7f00;
}
.ct-personBox--extendedLight .ct-personContent .ct-personName a {
  color: #fff;
}
.ct-personBox--extendedLight .ct-personContent .ct-personName a:hover {
  color: #333;
}
/* Portfolio -----------------------------------------------  */
.ct-gallery-itemInner .ct-galleryBox-overlay {
  background-color: #ff7f00;
}