text:
namespace Blueprint41.Modeller
{
    partial class ManageSubmodelForm
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;

        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Windows Form Designer generated code

        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ManageSubmodelForm));
            this.btnCancel = new System.Windows.Forms.Button();
            this.btnOK = new System.Windows.Forms.Button();
            this.label1 = new System.Windows.Forms.Label();
            this.label2 = new System.Windows.Forms.Label();
            this.chkIsDraft = new System.Windows.Forms.CheckBox();
            this.label3 = new System.Windows.Forms.Label();
            this.numericChapter = new System.Windows.Forms.NumericUpDown();
            this.txtName = new System.Windows.Forms.TextBox();
            this.lbAvailable = new System.Windows.Forms.ListBox();
            this.lbExisting = new System.Windows.Forms.ListBox();
            this.btnAdd = new System.Windows.Forms.Button();
            this.btnRemove = new System.Windows.Forms.Button();
            this.buttonAddAll = new System.Windows.Forms.Button();
            this.buttonRemoveAll = new System.Windows.Forms.Button();
            this.label4 = new System.Windows.Forms.Label();
            this.chkIsLaboratory = new System.Windows.Forms.CheckBox();
            this.label5 = new System.Windows.Forms.Label();
            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
            this.panel1 = new System.Windows.Forms.Panel();
            this.btnDelete = new System.Windows.Forms.Button();
            this.hteExplaination = new Blueprint41.Modeller.HtmlEditor();
            ((System.ComponentModel.ISupportInitialize)(this.numericChapter)).BeginInit();
            this.tableLayoutPanel1.SuspendLayout();
            this.panel1.SuspendLayout();
            this.SuspendLayout();
            //
            // btnCancel
            //
            this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
            this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
            this.btnCancel.Location = new System.Drawing.Point(488, 670);
            this.btnCancel.Name = "btnCancel";
            this.btnCancel.Size = new System.Drawing.Size(75, 23);
            this.btnCancel.TabIndex = 1;
            this.btnCancel.Text = "Cancel";
            this.btnCancel.UseVisualStyleBackColor = true;
            //
            // btnOK
            //
            this.btnOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
            this.btnOK.Enabled = false;
            this.btnOK.Location = new System.Drawing.Point(407, 670);
            this.btnOK.Name = "btnOK";
            this.btnOK.Size = new System.Drawing.Size(75, 23);
            this.btnOK.TabIndex = 2;
            this.btnOK.Text = "OK";
            this.btnOK.UseVisualStyleBackColor = true;
            this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
            //
            // label1
            //
            this.label1.AutoSize = true;
            this.label1.Location = new System.Drawing.Point(12, 13);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(38, 13);
            this.label1.TabIndex = 3;
            this.label1.Text = "Name:";
            //
            // label2
            //
            this.label2.AutoSize = true;
            this.label2.Location = new System.Drawing.Point(12, 39);
            this.label2.Name = "label2";
            this.label2.Size = new System.Drawing.Size(47, 13);
            this.label2.TabIndex = 5;
            this.label2.Text = "Chapter:";
            //
            // chkIsDraft
            //
            this.chkIsDraft.AutoSize = true;
            this.chkIsDraft.Location = new System.Drawing.Point(85, 64);
            this.chkIsDraft.Name = "chkIsDraft";
            this.chkIsDraft.Size = new System.Drawing.Size(15, 14);
            this.chkIsDraft.TabIndex = 6;
            this.chkIsDraft.UseVisualStyleBackColor = true;
            //
            // label3
            //
            this.label3.AutoSize = true;
            this.label3.Location = new System.Drawing.Point(12, 64);
            this.label3.Name = "label3";
            this.label3.Size = new System.Drawing.Size(44, 13);
            this.label3.TabIndex = 7;
            this.label3.Text = "Is Draft:";
            //
            // numericChapter
            //
            this.numericChapter.Location = new System.Drawing.Point(85, 37);
            this.numericChapter.Name = "numericChapter";
            this.numericChapter.Size = new System.Drawing.Size(212, 20);
            this.numericChapter.TabIndex = 8;
            //
            // txtName
            //
            this.txtName.Location = new System.Drawing.Point(85, 10);
            this.txtName.Name = "txtName";
            this.txtName.Size = new System.Drawing.Size(212, 20);
            this.txtName.TabIndex = 9;
            this.txtName.TextChanged += new System.EventHandler(this.txtName_TextChanged);
            //
            // lbAvailable
            //
            this.lbAvailable.Dock = System.Windows.Forms.DockStyle.Fill;
            this.lbAvailable.FormattingEnabled = true;
            this.lbAvailable.Location = new System.Drawing.Point(3, 3);
            this.lbAvailable.Name = "lbAvailable";
            this.lbAvailable.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended;
            this.lbAvailable.Size = new System.Drawing.Size(249, 357);
            this.lbAvailable.TabIndex = 10;
            this.lbAvailable.SelectedIndexChanged += new System.EventHandler(this.lbAvailable_SelectedIndexChanged);
            //
            // lbExisting
            //
            this.lbExisting.Dock = System.Windows.Forms.DockStyle.Fill;
            this.lbExisting.FormattingEnabled = true;
            this.lbExisting.Location = new System.Drawing.Point(301, 3);
            this.lbExisting.Name = "lbExisting";
            this.lbExisting.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended;
            this.lbExisting.Size = new System.Drawing.Size(249, 357);
            this.lbExisting.TabIndex = 11;
            this.lbExisting.SelectedIndexChanged += new System.EventHandler(this.lbExisting_SelectedIndexChanged);
            //
            // btnAdd
            //
            this.btnAdd.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
            this.btnAdd.Location = new System.Drawing.Point(5, 146);
            this.btnAdd.Name = "btnAdd";
            this.btnAdd.Size = new System.Drawing.Size(27, 23);
            this.btnAdd.TabIndex = 12;
            this.btnAdd.Text = ">";
            this.btnAdd.UseVisualStyleBackColor = true;
            this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
            //
            // btnRemove
            //
            this.btnRemove.Anchor = System.Windows.Forms.AnchorStyles.Top;
            this.btnRemove.Location = new System.Drawing.Point(5, 173);
            this.btnRemove.Name = "btnRemove";
            this.btnRemove.Size = new System.Drawing.Size(27, 23);
            this.btnRemove.TabIndex = 13;
            this.btnRemove.Text = "<";
            this.btnRemove.UseVisualStyleBackColor = true;
            this.btnRemove.Click += new System.EventHandler(this.btnRemove_Click);
            //
            // buttonAddAll
            //
            this.buttonAddAll.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
            this.buttonAddAll.Location = new System.Drawing.Point(5, 119);
            this.buttonAddAll.Name = "buttonAddAll";
            this.buttonAddAll.Size = new System.Drawing.Size(27, 23);
            this.buttonAddAll.TabIndex = 14;
            this.buttonAddAll.Text = ">>";
            this.buttonAddAll.UseVisualStyleBackColor = true;
            this.buttonAddAll.Click += new System.EventHandler(this.buttonAddAll_Click);
            //
            // buttonRemoveAll
            //
            this.buttonRemoveAll.Anchor = System.Windows.Forms.AnchorStyles.Top;
            this.buttonRemoveAll.Location = new System.Drawing.Point(5, 200);
            this.buttonRemoveAll.Name = "buttonRemoveAll";
            this.buttonRemoveAll.Size = new System.Drawing.Size(27, 23);
            this.buttonRemoveAll.TabIndex = 15;
            this.buttonRemoveAll.Text = "<<";
            this.buttonRemoveAll.UseVisualStyleBackColor = true;
            this.buttonRemoveAll.Click += new System.EventHandler(this.buttonRemoveAll_Click);
            //
            // label4
            //
            this.label4.AutoSize = true;
            this.label4.ForeColor = System.Drawing.Color.Red;
            this.label4.Location = new System.Drawing.Point(12, 106);
            this.label4.Name = "label4";
            this.label4.Size = new System.Drawing.Size(314, 13);
            this.label4.TabIndex = 16;
            this.label4.Text = "Explanation:   (New Paragraph = Enter  |  New Line = Shift+Enter)";
            //
            // chkIsLaboratory
            //
            this.chkIsLaboratory.AutoSize = true;
            this.chkIsLaboratory.Location = new System.Drawing.Point(85, 84);
            this.chkIsLaboratory.Name = "chkIsLaboratory";
            this.chkIsLaboratory.Size = new System.Drawing.Size(15, 14);
            this.chkIsLaboratory.TabIndex = 19;
            this.chkIsLaboratory.UseVisualStyleBackColor = true;
            //
            // label5
            //
            this.label5.AutoSize = true;
            this.label5.Location = new System.Drawing.Point(12, 84);
            this.label5.Name = "label5";
            this.label5.Size = new System.Drawing.Size(71, 13);
            this.label5.TabIndex = 20;
            this.label5.Text = "Is Laboratory:";
            //
            // tableLayoutPanel1
            //
            this.tableLayoutPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
            | System.Windows.Forms.AnchorStyles.Right)));
            this.tableLayoutPanel1.ColumnCount = 3;
            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            this.tableLayoutPanel1.Controls.Add(this.panel1, 1, 0);
            this.tableLayoutPanel1.Controls.Add(this.lbExisting, 2, 0);
            this.tableLayoutPanel1.Controls.Add(this.lbAvailable, 0, 0);
            this.tableLayoutPanel1.Location = new System.Drawing.Point(15, 305);
            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
            this.tableLayoutPanel1.RowCount = 1;
            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
            this.tableLayoutPanel1.Size = new System.Drawing.Size(553, 363);
            this.tableLayoutPanel1.TabIndex = 21;
            //
            // panel1
            //
            this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
            this.panel1.Controls.Add(this.buttonAddAll);
            this.panel1.Controls.Add(this.btnAdd);
            this.panel1.Controls.Add(this.btnRemove);
            this.panel1.Controls.Add(this.buttonRemoveAll);
            this.panel1.Location = new System.Drawing.Point(258, 3);
            this.panel1.Name = "panel1";
            this.panel1.Size = new System.Drawing.Size(37, 357);
            this.panel1.TabIndex = 22;
            //
            // btnDelete
            //
            this.btnDelete.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
            this.btnDelete.ForeColor = System.Drawing.Color.Red;
            this.btnDelete.Location = new System.Drawing.Point(15, 670);
            this.btnDelete.Name = "btnDelete";
            this.btnDelete.Size = new System.Drawing.Size(75, 23);
            this.btnDelete.TabIndex = 22;
            this.btnDelete.Text = "Delete";
            this.btnDelete.UseVisualStyleBackColor = true;
            this.btnDelete.Click += new System.EventHandler(this.btnDelete_Click);
            //
            // hteExplaination
            //
            this.hteExplaination.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
            | System.Windows.Forms.AnchorStyles.Left)
            | System.Windows.Forms.AnchorStyles.Right)));
            this.hteExplaination.BodyBackgroundColor = System.Drawing.Color.White;
            this.hteExplaination.BodyHtml = null;
            this.hteExplaination.BodyText = null;
            this.hteExplaination.DocumentText = resources.GetString("hteExplaination.DocumentText");
            this.hteExplaination.EditorBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
            this.hteExplaination.EditorForeColor = Blueprint41.Modeller.FontColor.Black;
            this.hteExplaination.FontSize = Blueprint41.Modeller.FontSize.Regular;
            this.hteExplaination.Html = null;
            this.hteExplaination.Location = new System.Drawing.Point(18, 124);
            this.hteExplaination.Name = "hteExplaination";
            this.hteExplaination.Size = new System.Drawing.Size(547, 175);
            this.hteExplaination.TabIndex = 18;
            //
            // ManageSubmodelForm
            //
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.CancelButton = this.btnCancel;
            this.ClientSize = new System.Drawing.Size(580, 700);
            this.Controls.Add(this.btnDelete);
            this.Controls.Add(this.tableLayoutPanel1);
            this.Controls.Add(this.label5);
            this.Controls.Add(this.chkIsLaboratory);
            this.Controls.Add(this.hteExplaination);
            this.Controls.Add(this.label4);
            this.Controls.Add(this.txtName);
            this.Controls.Add(this.numericChapter);
            this.Controls.Add(this.label3);
            this.Controls.Add(this.chkIsDraft);
            this.Controls.Add(this.label2);
            this.Controls.Add(this.label1);
            this.Controls.Add(this.btnOK);
            this.Controls.Add(this.btnCancel);
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
            this.Name = "ManageSubmodelForm";
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
            this.Text = "Submodel - Editor";
            ((System.ComponentModel.ISupportInitialize)(this.numericChapter)).EndInit();
            this.tableLayoutPanel1.ResumeLayout(false);
            this.panel1.ResumeLayout(false);
            this.ResumeLayout(false);
            this.PerformLayout();

        }

        #endregion
        private System.Windows.Forms.Button btnCancel;
        private System.Windows.Forms.Button btnOK;
        private System.Windows.Forms.Label label1;
        private System.Windows.Forms.Label label2;
        private System.Windows.Forms.CheckBox chkIsDraft;
        private System.Windows.Forms.Label label3;
        private System.Windows.Forms.NumericUpDown numericChapter;
        private System.Windows.Forms.TextBox txtName;
        private System.Windows.Forms.ListBox lbAvailable;
        private System.Windows.Forms.ListBox lbExisting;
        private System.Windows.Forms.Button btnAdd;
        private System.Windows.Forms.Button btnRemove;
        private System.Windows.Forms.Button buttonAddAll;
        private System.Windows.Forms.Button buttonRemoveAll;
        private System.Windows.Forms.Label label4;
        private System.Windows.Forms.CheckBox chkIsLaboratory;
        private System.Windows.Forms.Label label5;
        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
        private System.Windows.Forms.Panel panel1;
        private System.Windows.Forms.Button btnDelete;
        private HtmlEditor hteExplaination;
    }
}


text:
package net.rizov.gameutils.scene;

public enum LoadingRoomAction {

}

redpajama_set_name: RedPajamaGithub


text:
<?xml version="1.0" encoding="utf-8"?>
<resources>

  <style name="Kampr"></style>

  <style name="KamprActionBar"></style>

  <style name="Image"></style>

  <style name="Image.UserIcon">
    <item name="android:layout_width">50dp</item>
    <item name="android:layout_height">50dp</item>
    <item name="android:layout_alignParentLeft">true</item>
    <item name="android:background">@drawable/post_item_user_icon_states</item>
    <item name="android:maxHeight">50dp</item>
    <item name="android:maxWidth">50dp</item>
    <item name="android:minWidth">50dp</item>
    <item name="android:minHeight">50dp</item>
  </style>

  <style name="UserPostItemContent">
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:gravity">center_vertical</item>
    <item name="android:text">content</item>
    <item name="android:textColor">@color/post_title</item>
    <item name="android:textSize">14sp</item>
  </style>

</resources>


text:
package com.codesimples.jdbc

import java.util.UUID
import javax.sql.DataSource

import com.codesimples.jdbc.adapter.user.UserPersistenceAdapter
import com.codesimples.jdbc.repositories.UserRepository
import com.typesafe.config.ConfigFactory
import org.specs2.mutable.Specification
import org.springframework.jdbc.datasource.DataSourceTransactionManager

import scala.collection.JavaConversions._

class JDBCSpec extends Specification {

  val datasource = newDatasource()

  "The select products by id" should {
    args(sequential=true)
    "Add user with UserPersistenceAdapter" ! jdbcSpecForTest().addUserWithUserPersistenceAdapter()
  }

  private def newDatasource(): DataSource = {
    val mapConfig = Map[String, AnyRef](
      "driver" -> "com.mysql.jdbc.Driver",
      "url" -> "jdbc:mysql://localhost:3306/planner",
      "username" -> "root",
      "password" -> ""
    )

    val config = ConfigFactory.parseMap( mapConfig )
    DataSourceBuilder.buildDataSourceWith( config )
  }

  case class jdbcSpecForTest() {
    def addUserWithUserPersistenceAdapter() = {
      val transactionManager = new DataSourceTransactionManager( datasource )
      val userRepository = new UserRepository(transactionManager)
      val userPersistenceAdapter = new UserPersistenceAdapter(userRepository)

      val user = Map[String,AnyRef](
        "id" -> UUID.randomUUID().toString,
        "persistenceType" -> "jdbc"
      )

      userPersistenceAdapter.withTransaction {
        userPersistenceAdapter.saveUser(user)
      }

      val result = userPersistenceAdapter.findUserById(user.getOrElse("id", "").asInstanceOf[String])
      result.getOrElse("id", "").asInstanceOf[String] must beEqualTo(user.getOrElse("id", "").asInstanceOf[String])
    }
  }
}


text:
import {expect} from 'chai';

import { generateWorkout, generatePattern } from '../lib/index';

describe('::generatePattern', () => {
  let pattern;

  before(() => {
    pattern = generatePattern(1800);
  });

  it('generates a pattern', () => {
    expect(pattern).to.be.ok;
  });
});

describe('::generateWorkout', () => {
  let pattern;

  before(() => {
    pattern = generateWorkout(1800);
  });

  it('generates a pattern', () => {
    expect(pattern).to.be.ok;
  });
});


text:
<!DOCTYPE html>

  <meta charset="utf-8">
  <title>Crevision | Creative Responsive Theme</title>
  <meta name="description" content="">
  <meta name="author" content="">

  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

  <link rel="stylesheet" href="css/style.css">

  <link rel="stylesheet" href="css/skins/blue.css" name="skins">

  <link rel="stylesheet" href="css/layout/wide.css" name="layout">

  <link rel="stylesheet" href="css/layout/switcher.css">

  <link rel="stylesheet" href="css/icons.css">

  <link rel="shortcut icon" href="images/favicon/favicon.ico">
  <link rel="apple-touch-icon" href="images/favicon/apple-touch-icon.png">
  <link rel="apple-touch-icon" sizes="72x72" href="images/favicon/apple-touch-icon-72x72.png">
  <link rel="apple-touch-icon" sizes="114x114" href="images/favicon/apple-touch-icon-114x114.png">

Home

Home 2

Home 3

Home 4

Home 5

Slider 2

Slider 3

Pages

About us

Services

Our Team

Process

Page Right Sidebar

Page Left Sidebar

FAQ

Sitemap

Full Width

Features

Shortcodes

Icons

Pricing Tables

Under Construction

404 Page

Third Level Item

Sub Item Example 1

Sub Item Example 2

Portfolio

2 Columns

3 Columns

4 Columns

Single Project 1

Single Project 2

Blog

Blog 1

Blog 2

Blog 3

Single Post

Contact

Crevision | Creative Responsive Theme

Welcome to Crevision Clean & Responsive HTML Template.This intro text can be modified.

Crevision | 5 Home Page Layouts

Welcome to Crevision Clean & Responsive HTML Template.This intro text can be modified.

Crevision | 3 Sliders Styles

Welcome to Crevision Clean & Responsive HTML Template.This intro text can be modified.

Crevision | Shortcodes Styles

Welcome to Crevision Clean & Responsive HTML Template.This intro text can be modified.

Crevision | Icons Shortcodes For Use

Welcome to Crevision Clean & Responsive HTML Template.This intro text can be modified.

Current

Slide 1

Slide 2

Slide 3

Slide 4

Slide 5

          Welcome to Crevision Clean & Responsive HTML Template.This intro text can be modified and is
          a good way to say hello to the visitor.

Our Services

Web Design

 Shaping a creative identity, rich and versatile Enhance your corporate image.

Branding

 Designing graphic guidelines with possible variation on multi-support.

Wordpress

 Development for a simple or complex content management platform, and multi-user.

Strategy

 Graphic design watch and carrying out benchmarking. Analysis of your targets.

Recent Work

Next

Prev

MonsterUp

design ,graphic ,illustration

MonsterUp

design ,graphic ,illustration

MonsterUp

design ,graphic ,illustration

MonsterUp

design ,graphic ,illustration

MonsterUp

design ,graphic ,illustration

MonsterUp

design ,graphic ,illustration

MonsterUp

design ,graphic ,illustration

MonsterUp

design ,graphic ,illustration

Recent Blog

25AUG

Start jozoor website

Start jozoor website by jozor we love design and more u can talk we about any thing for design and branding design we love
            the design.

            Jozoor, Webdesign, Branding | 2 Comments

25AUG

Start jozoor website

Start jozoor website by jozor we love design and more u can talk we about any thing for design and branding design we love
            the design.

            Jozoor, Webdesign, Branding | 2 Comments

Testimonials

Start jozoor website by jozor we love design and more u can talk we about any thing for design and branding
            design love design.

Mohamed, Flash Developer

Start jozoor website by jozor we love design and more u can talk we about any thing for design and branding
            design love design.

Mohamed, Flash Developer

Start jozoor website by jozor we love design and more u can talk we about any thing for design and branding
            design love design.

Mohamed, Flash Developer

Start jozoor website by jozor we love design and more u can talk we about any thing for design and branding
            design love design.

Mohamed, Flash Developer

Our Clients

About Us

          Consectetur adipiscing elit aeneane lorem lipsum, condimentum ultrices consequat eu, vehicula mauris lipsum adipiscing
          lipsum aenean orci lorem Asequat.
 lorem ipsum dolor lorem sit amet, consectetur adipiscing dolor .

Latest tweets

Flickr

Subcribe

Subscribe to our e-mail newsletter to receive updates.

          <form action="#">
            <input type="text" class="mail" value="Enter your Email" onBlur="if(this.value == '') { this.value = 'Enter your Email'; }"
            onfocus="if(this.value == 'Enter your Email') { this.value = ''; }"/>
            <input type="submit" value="Submit" class="submit" />
          </form>

      © Copyright 2012 Crevision. All Rights Reserved. by
      jozoor


text:
<sequence name="_auth_failure_handler_" xmlns="http://ws.apache.org/ns/synapse">
    <filter source="get-property('MESSAGE_FORMAT')" regex="soap1[1-2]">
        <then>
            <property name="SOAP_FAULT_CODE" value="Client"/>
            <makefault version="soap11">
                <code expression="$ctx:SOAP_FAULT_CODE"/>
                <reason value="Authentication Failure"/>
                <detail expression="$ctx:ERROR_MESSAGE"/>
            </makefault>
        </then>
        <else>
            <payloadFactory media-type="json">
                <format>{"code":"$1","message":"$2","description":"$3"}</format>
                <args>
                    <arg expression="$ctx:ERROR_CODE"/>
                    <arg expression="$ctx:ERROR_MESSAGE"/>
                    <arg expression="$ctx:ERROR_DETAIL"/>
                </args>
            </payloadFactory>
            <filter source="$axis2:HTTP_METHOD" regex="^(?!.*(POST|PUT|PATCH)).*$">
                <property name="messageType" value="application/json" scope="axis2"/>
            </filter>
        </else>
    </filter>
    <filter xpath="$ctx:HTTP_RESPONSE_STATUS_CODE">
        <then>
            <property name="HTTP_SC" expression="$ctx:HTTP_RESPONSE_STATUS_CODE" scope="axis2"/>
        </then>
        <else>
            <property name="HTTP_SC" value="401" scope="axis2"/>
        </else>
    </filter>
    <property name="RESPONSE" value="true"/>
    <header name="To" action="remove"/>
    <property name="NO_ENTITY_BODY" scope="axis2" action="remove"/>
    <property name="ContentType" scope="axis2" action="remove"/>
    <property name="Authorization" scope="transport" action="remove"/>
    <property name="Host" scope="transport" action="remove"/>
    <property name="Accept" scope="transport" action="remove"/>
    <property name="X-JWT-Assertion" scope="transport" action="remove"/>
    <sequence key="_cors_request_handler_"/>
</sequence>


text:
<?php

namespace App\Http\Middleware;

use Closure;

class EmailConfirm
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request $request
     * @param  \Closure $next
     * @param  string|null $guard
     * @return mixed
     */
    public function handle($request, Closure $next, $guard = null)
    {
        $user = auth()->guard($guard)->user();
        if (!$user->isConfirmed) {
            //跳轉至重送驗證信頁面
            return redirect()->route('auth.resend-confirm-mail')->with('warning', '尚未完成信箱驗證');
        }

        return $next($request);
    }
}


text:
#import "FirebaseAppCheck/Sources/Public/FirebaseAppCheck/FIRAppCheckErrors.h"

#import "FirebaseAppCheck/Sources/AppAttestProvider/Errors/FIRAppAttestRejectionError.h"

#import "FirebaseAppCheck/Sources/Core/Errors/FIRAppCheckErrorUtil.h"

@implementation FIRAppAttestRejectionError

- (instancetype)init {
  return [self initWithDomain:FIRAppCheckErrorDomain code:FIRAppCheckErrorCodeUnknown userInfo:nil];
}

@end


text:
from pypif.obj.common.file_reference import FileReference
from pypif import pif

def test_round_robin():
    url = "https://citrination.com/datasets/1160/version/3/file/308882"
    path = "/tmp/foo.bar"
    fr = FileReference(url=url, relative_path=path)
    assert fr.relative_path == path, "Python object couldn't store relative path"
    assert fr.url == url, "Python object couldn't store URL"
    round_robin = pif.loads(pif.dumps(fr), class_=FileReference)
    assert round_robin.relative_path == path, "Relative path didn't survive json round robin"
    assert round_robin.url == url, "URL dind't survive json round robin"


text:
package br.com.objectos.jabuticava.boleto;

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URISyntaxException;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.StandardCopyOption;

import br.com.objectos.way.lazy.Lazy;

import com.google.inject.Singleton;

import org.lesscss.LessCompiler;
import org.lesscss.LessException;

/**
 * @author marcio.endo@objectos.com.br (Marcio Endo)
 */
@Singleton
class StylesGuice implements Styles {

  private final Lazy<String> css = new LazyCss();
  private final Lazy<String> inline = new LazyInline();

  @Override
  public String css() {
    return css.get();
  }

  @Override
  public String inline() {
    return inline.get();
  }

  private class LazyCss extends Lazy<String> {

    @Override
    public String compute() {
      try {
        return compute0();
      } catch (IOException | LessException | URISyntaxException e) {
        throw new RuntimeException(e);
      }
    }

    private String compute0() throws IOException, LessException, URISyntaxException {
      Path dir = Files.createTempDirectory("o7-boleto-styles");

      copy(dir, "bootstrap-mixins.less");
      copy(dir, "bootstrap-variables.less");
      copy(dir, "obj-type.less");
      copy(dir, "way-boleto.less");

      File less = copy(dir, "way-boleto-deps.less").toFile();
      return new LessCompiler().compile(less);
    }

    private Path copy(Path dir, String name) throws IOException, URISyntaxException {
      URL url = Styles.class.getResource(String.format("/style/%s", name));
      Path target = dir.resolve(name);
      try (InputStream source = url.openStream()) {
        Files.copy(source, target, StandardCopyOption.REPLACE_EXISTING);
      }
      return target;
    }

  }

  private class LazyInline extends Lazy<String> {

    @Override
    public String compute() {
      StringBuilder res = new StringBuilder();

      res.append("<style type=\"text/css\">");
      res.append("\r\n");

      String css = StylesGuice.this.css.get();
      res.append(css);
      res.append("\r\n");

      res.append("</style>");

      return res.toString();
    }

  }

}


text:
/*
Package inflection pluralizes and singularizes English nouns.

		inflection.Plural("person") => "people"
		inflection.Plural("Person") => "People"
		inflection.Plural("PERSON") => "PEOPLE"

		inflection.Singularize("people") => "person"
		inflection.Singularize("People") => "Person"
		inflection.Singularize("PEOPLE") => "PERSON"

		inflection.Plural("FancyPerson") => "FancydPeople"
		inflection.Singularize("FancyPeople") => "FancydPerson"

Standard rules are from Rails's ActiveSupport (https://github.com/rails/rails/blob/master/activesupport/lib/active_support/inflections.rb)

If you want to register more rules, follow:

		inflection.AddUncountable("fish")
		inflection.AddIrregular("person", "people")
		inflection.AddPlural("(bu)s$", "${1}ses") # "bus" => "buses" / "BUS" => "BUSES" / "Bus" => "Buses"
		inflection.AddSingular("(bus)(es)?$", "${1}") # "buses" => "bus" / "Buses" => "Bus" / "BUSES" => "BUS"
*/
package inflection

import (
	"regexp"
	"strings"
)

var pluralInflections = [][]string{
	[]string{"([a-z])$", "${1}s"},
	[]string{"s$", "s"},
	[]string{"^(ax|test)is$", "${1}es"},
	[]string{"(octop|vir)us$", "${1}i"},
	[]string{"(octop|vir)i$", "${1}i"},
	[]string{"(alias|status)$", "${1}es"},
	[]string{"(bu)s$", "${1}ses"},
	[]string{"(buffal|tomat)o$", "${1}oes"},
	[]string{"([ti])um$", "${1}a"},
	[]string{"([ti])a$", "${1}a"},
	[]string{"sis$", "ses"},
	[]string{"(?:([^f])fe|([lr])f)$", "${1}${2}ves"},
	[]string{"(hive)$", "${1}s"},
	[]string{"([^aeiouy]|qu)y$", "${1}ies"},
	[]string{"(x|ch|ss|sh)$", "${1}es"},
	[]string{"(matr|vert|ind)(?:ix|ex)$", "${1}ices"},
	[]string{"^(m|l)ouse$", "${1}ice"},
	[]string{"^(m|l)ice$", "${1}ice"},
	[]string{"^(ox)$", "${1}en"},
	[]string{"^(oxen)$", "${1}"},
	[]string{"(quiz)$", "${1}zes"},
}

var singularInflections = [][]string{
	[]string{"s$", ""},
	[]string{"(ss)$", "${1}"},
	[]string{"(n)ews$", "${1}ews"},
	[]string{"([ti])a$", "${1}um"},
	[]string{"((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)(sis|ses)$", "${1}sis"},
	[]string{"(^analy)(sis|ses)$", "${1}sis"},
	[]string{"([^f])ves$", "${1}fe"},
	[]string{"(hive)s$", "${1}"},
	[]string{"(tive)s$", "${1}"},
	[]string{"([lr])ves$", "${1}f"},
	[]string{"([^aeiouy]|qu)ies$", "${1}y"},
	[]string{"(s)eries$", "${1}eries"},
	[]string{"(m)ovies$", "${1}ovie"},
	[]string{"(x|ch|ss|sh)es$", "${1}"},
	[]string{"^(m|l)ice$", "${1}ouse"},
	[]string{"(bus)(es)?$", "${1}"},
	[]string{"(o)es$", "${1}"},
	[]string{"(shoe)s$", "${1}"},
	[]string{"(cris|test)(is|es)$", "${1}is"},
	[]string{"^(a)x[ie]s$", "${1}xis"},
	[]string{"(octop|vir)(us|i)$", "${1}us"},
	[]string{"(alias|status)(es)?$", "${1}"},
	[]string{"^(ox)en", "${1}"},
	[]string{"(vert|ind)ices$", "${1}ex"},
	[]string{"(matr)ices$", "${1}ix"},
	[]string{"(quiz)zes$", "${1}"},
	[]string{"(database)s$", "${1}"},
}

var irregularInflections = [][]string{
	[]string{"person", "people"},
	[]string{"man", "men"},
	[]string{"child", "children"},
	[]string{"sex", "sexes"},
	[]string{"move", "moves"},
	[]string{"mombie", "mombies"},
}

var uncountableInflections = []string{"equipment", "information", "rice", "money", "species", "series", "fish", "sheep", "jeans", "police"}

type inflection struct {
	regexp  *regexp.Regexp
	replace string
}

var compiledPluralMaps []inflection
var compiledSingularMaps []inflection

func compile() {
	compiledPluralMaps = []inflection{}
	compiledSingularMaps = []inflection{}
	for _, uncountable := range uncountableInflections {
		inf := inflection{
			regexp:  regexp.MustCompile("^(?i)(" + uncountable + ")$"),
			replace: "${1}",
		}
		compiledPluralMaps = append(compiledPluralMaps, inf)
		compiledSingularMaps = append(compiledSingularMaps, inf)
	}

	for _, value := range irregularInflections {
		infs := []inflection{
			inflection{regexp: regexp.MustCompile(strings.ToUpper(value[0]) + "$"), replace: strings.ToUpper(value[1])},
			inflection{regexp: regexp.MustCompile(strings.Title(value[0]) + "$"), replace: strings.Title(value[1])},
			inflection{regexp: regexp.MustCompile(value[0] + "$"), replace: value[1]},
		}
		compiledPluralMaps = append(compiledPluralMaps, infs...)
	}

	for _, value := range irregularInflections {
		infs := []inflection{
			inflection{regexp: regexp.MustCompile(strings.ToUpper(value[1]) + "$"), replace: strings.ToUpper(value[0])},
			inflection{regexp: regexp.MustCompile(strings.Title(value[1]) + "$"), replace: strings.Title(value[0])},
			inflection{regexp: regexp.MustCompile(value[1] + "$"), replace: value[0]},
		}
		compiledSingularMaps = append(compiledSingularMaps, infs...)
	}

	for i := len(pluralInflections) - 1; i >= 0; i-- {
		value := pluralInflections[i]
		infs := []inflection{
			inflection{regexp: regexp.MustCompile(strings.ToUpper(value[0])), replace: strings.ToUpper(value[1])},
			inflection{regexp: regexp.MustCompile(value[0]), replace: value[1]},
			inflection{regexp: regexp.MustCompile("(?i)" + value[0]), replace: value[1]},
		}
		compiledPluralMaps = append(compiledPluralMaps, infs...)
	}

	for i := len(singularInflections) - 1; i >= 0; i-- {
		value := singularInflections[i]
		infs := []inflection{
			inflection{regexp: regexp.MustCompile(strings.ToUpper(value[0])), replace: strings.ToUpper(value[1])},
			inflection{regexp: regexp.MustCompile(value[0]), replace: value[1]},
			inflection{regexp: regexp.MustCompile("(?i)" + value[0]), replace: value[1]},
		}
		compiledSingularMaps = append(compiledSingularMaps, infs...)
	}
}

func init() {
	compile()
}

func AddPlural(key, value string) {
	pluralInflections = append(pluralInflections, []string{key, value})
	compile()
}

func AddSingular(key, value string) {
	singularInflections = append(singularInflections, []string{key, value})
	compile()
}

func AddIrregular(key, value string) {
	irregularInflections = append(irregularInflections, []string{key, value})
	compile()
}

func AddUncountable(value string) {
	uncountableInflections = append(uncountableInflections, value)
	compile()
}

func Plural(str string) string {
	for _, inflection := range compiledPluralMaps {
		if inflection.regexp.MatchString(str) {
			return inflection.regexp.ReplaceAllString(str, inflection.replace)
		}
	}
	return str
}

func Singular(str string) string {
	for _, inflection := range compiledSingularMaps {
		if inflection.regexp.MatchString(str) {
			return inflection.regexp.ReplaceAllString(str, inflection.replace)
		}
	}
	return str
}


text:
<?xml version="1.0" encoding="UTF-8"?>
<bundle id="bigJackTrio">
	<price locale="US">5.95</price>
	<price>6.20</price>
	<name locale="en">Big Jack Trio</name>
	<name locale="fr">Trio Big Jack</name>
	<description locale="en">Big Jack, fries and your choice of soft drink.</description>
	<description locale="fr">Big Jack, frites et votre boisson gazeuse favorite.</description>
	<subProducts>bigJack largeFries largeCola</subProducts>
</bundle>


text:
{% extends "base.html" %}

{% load thumbnail %}

{% block content %}

        {% for product in products %}

              {% if product.image %}

              {% endif %}

{{ product.name }}

              ${{ product.price }}

        {% endfor %}

{% endblock %}


text:
START_ATF_NAMESPACE
    typedef tagCANDIDATELIST *LPCANDIDATELIST;
END_ATF_NAMESPACE


text:
package org.wisdom.maven.osgi;

import com.google.common.collect.ImmutableList;
import org.junit.Test;

import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Properties;

import static org.assertj.core.api.Assertions.assertThat;

public class InstructionsTest {

    @Test
    public void testMerge() throws Exception {
        Properties props1 = new Properties();
        props1.put("Export-Package", "org.foo");
        props1.put("Import-Package", "!*");

        File file = new File("src/test/resources/instructions/instructions.bnd");
        assertThat(Instructions.merge(props1, file))
                .hasSize(3)
                .containsEntry("Export-Package", "org.foo")
                .containsEntry("Import-Package", "*")
                .containsEntry("Private-Package", "org.acme");
    }

    @Test
    public void testMergeAndOverrideExisting() throws Exception {
        Properties props1 = new Properties();
        props1.put("A", "a");
        props1.put("B", "b");

        Properties props2 = new Properties();
        props2.put("A", "aa");
        props2.put("C", "c");

        assertThat(Instructions.mergeAndOverrideExisting(props1, props2))
                .hasSize(3)
                .containsKeys("A", "B", "C")
                .containsEntry("A", "aa");

        assertThat(Instructions.mergeAndOverrideExisting(props1, new Properties()))
                .hasSize(2)
                .containsKeys("A", "B")
                .containsEntry("A", "a");

        assertThat(Instructions.mergeAndOverrideExisting(new Properties(), props2))
                .hasSize(2)
                .containsKeys("A", "C")
                .containsEntry("A", "aa");
    }

    @Test
    public void testMergeAndSkipExisting() throws Exception {
        Properties props1 = new Properties();
        props1.put("A", "a");
        props1.put("B", "b");

        Properties props2 = new Properties();
        props2.put("A", "aa");
        props2.put("C", "c");

        assertThat(Instructions.mergeAndSkipExisting(props1, props2))
                .hasSize(3)
                .containsKeys("A", "B", "C")
                .containsEntry("A", "a");

        assertThat(Instructions.mergeAndSkipExisting(props1, new Properties()))
                .hasSize(2)
                .containsKeys("A", "B")
                .containsEntry("A", "a");

        assertThat(Instructions.mergeAndSkipExisting(new Properties(), props2))
                .hasSize(2)
                .containsKeys("A", "C")
                .containsEntry("A", "aa");
    }

    @Test
    public void testLoadEmptyFile() throws Exception {
        File file = new File("src/test/resources/instructions/empty.bnd");
        assertThat(Instructions.load(file)).isEmpty();
    }

    @Test
    public void testLoadMissingFile() throws Exception {
        File file = new File("src/test/resources/instructions/missing.bnd");
        assertThat(Instructions.load(file)).isEmpty();
    }

    @Test
    public void testLoad() throws IOException {
        File file = new File("src/test/resources/instructions/instructions.bnd");
        assertThat(Instructions.load(file))
                .hasSize(2)
                .containsEntry("Import-Package", "*")
                .containsEntry("Private-Package", "org.acme");
    }

    @Test
    public void testSanitize() throws Exception {
        Properties props = new Properties();

        props.put(new int[4], new HashMap(2));
        props.put("A", new File("B"));
        props.put("4", new HashMap(2));
        props.put("1, two, 3.0", new char[5]);
        props.put("list", ImmutableList.of(1, 2));

        Properties sanitized = Instructions.sanitize(props);

        assertThat(sanitized)
                .containsEntry("A", "B")
                .containsEntry("4", "{}")
                .containsEntry("1, two, 3.0", "\u0000, \u0000, \u0000, \u0000, \u0000")
                .containsEntry("0, 0, 0, 0", "{}")
                .containsEntry("list", "1, 2");
    }
}


text:
A cakephp plugin for dependency injection based on [Pimple 3](http://pimple.sensiolabs.org)

## Requirements
* CakePHP 3.X
* [Pimple 3](http://pimple.sensiolabs.org)

# Installation
---------
To install this plugin you'll only have to add the plugin to your required section of composer.json then load in your bootstrap file.

```
composer require rochamarcelo/cake-pimple-di:dev-master
```

# Bootstrap
---------

Load the plugin as any other plugin:

```php
Plugin::load('RochaMarcelo/CakePimpleDi', ['bootstrap' => true, 'routes' => false]);
```

The bootstrap file must be loaded, to set up all configurations needed

## Register dependencies

In your configuration file you can define all the services:

```php
<?php
return [
    ...

    'CakePimpleDi' => [
        'actionInjections' => [
            '\App\Controller\BooksController' => [
                'index' => ['LibraryApp\Finder'],//should be defined in services
                'view' => ['LibraryApp\Finder', 'random_func']//should be defined in services
            ]
        ],
        'services' => [
            'LibraryApp\Client' => function() {//each time you get that service, will returns the same instance
                return new \Cake\Network\Http\Client;
            },
            'LibraryApp\Finder' => function($c) {//each time you get that service, will returns  the same instance
                $finder = new \LibraryApp\Finder\SimpleFinder(
                	$c['LibraryApp\Client']
                );

                return $finder;
            },
            'random_func' => [
                'value' => function () {
                    return rand();
                },
                'type' => 'parameter'//when you get that service, will return the original closure
            ],
            'cookie_name' => 'SESSION_ID',
            [
                'id' => 'something',
                'value' => function () {
                    $std = new \stdClass;
                    $std->rand = rand();
                    return $std;
                },
                'type' => 'factory'//will return  a different instance for all calls
            ]
        ]
    ]
];
```

You could also create a provider to reuse some services that you may use in other projects.

- So create the provider that implements Pimple\ServiceProviderInterface:
```php
<?php
namespace App\Di;

use Pimple\Container;
use Pimple\ServiceProviderInterface;

class LibraryAppProvider implements ServiceProviderInterface
{

    public function register(Container $pimple)
    {

        $pimple['LibraryApp\Client'] = function() {//each time you get that service, will returns the same instance
                return new \Cake\Network\Http\Client;
        };

        $pimple['LibraryApp\Finder'] = function($c) {//each time you get that service, will returns  the same instance
            $finder = new \LibraryApp\Finder\SimpleFinder(
                $c['LibraryApp\Client']
            );
            return $finder;
        };
    }
}
```
- Then, define in your configuration file:

```php
<?php
return [
    ...

    'CakePimpleDi' => [
        'providers' => [
            'App\Di\LibraryAppProvider'
        ],
        'services' => [
            'random_func' => [
                'value' => function () {
                    return rand();
                },
                'type' => 'parameter'//when you get that service, will return the original closure
            ]
        ]
    ]
];
```
## Loading dependency - Basic
Get the shared instance then call method "get"

```php
use RochaMarcelo\CakePimpleDi\Di\Di;
$finder = Di::instance()->get('LibraryApp\Finder');
```

## Loading dependency - With DiTrait

```php

namespace App\Controller;

use RochaMarcelo\CakePimpleDi\Di\DiTrait;

class BooksController extends AppController
{
    use DiTrait;

    public function index()
    {
        $finder = $this->di()->get('LibraryApp\Finder');
    }
}
```

## Loading dependency - Injections with InvokeActionTrait
In your configuration file:

```php
<?php
return [
    ...

    'CakePimpleDi' => [
        'actionInjections' => [
            '\App\Controller\BooksController' => [
                'index' => ['LibraryApp\Finder'],//should be defined in services
                'view' => ['LibraryApp\Finder', 'random_func']//should be defined in services
            ]
        ],
        'services' => [
            'LibraryApp\Client' => function() {//each time you get that service, will returns the same instance
                return new \Cake\Network\Http\Client;
            },
            'LibraryApp\Finder' => function($c) {//each time you get that service, will returns  the same instance
                $finder = new \LibraryApp\Finder\SimpleFinder(
                	$c['LibraryApp\Client']
                );

                return $finder;
            },
            'random_func' => [
                'value' => function () {
                    return rand();
                },
                'type' => 'parameter'//when you get that service, will return the original closure
            ],
        ]
    ]
];
```

In your controller use the InvokeActionTrait

```php

use RochaMarcelo\CakePimpleDi\Di\InvokeActionTrait;
class MyControllerController extends AppController
{
    use InvokeActionTrait;

    public function view(\CakeFinder $finder, $rand, $id = null)
    {
        $finder->find();
        .....
    }

    public function index($finder)
    {
        $finder->find();
        $something->doSomething();
    }
}
```

## Adding The CakePHP Request and Session Objects to The Container
To get the Session and Request objects added to the container just set the key 'useRequest' with the value boolean true in the configuration.

## What is Pimple?

Pimple is a simple PHP Dependency Injection Container, to more information visit: http://pimple.sensiolabs.org


text:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3" name="org.apache.commons.lang3" slot="main">

  <resources>
    <resource-root path="commons-lang3-${version.org.apache.commons.lang3}.jar"/>
  </resources>

  <dependencies>
    <module name="javax.api" slot="main" services="import"/>
  </dependencies>
</module>


text:
package k8sresourcelock

import (
	"context"
	"encoding/json"
	"errors"
	"fmt"

	v1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	corev1client "k8s.io/client-go/kubernetes/typed/core/v1"
)

// TODO: This is almost a exact replica of Endpoints lock.
// going forwards as we self host more and more components
// and use ConfigMaps as the means to pass that configuration
// data we will likely move to deprecate the Endpoints lock.

type ConfigMapLock struct {
	// ConfigMapMeta should contain a Name and a Namespace of a
	// ConfigMapMeta object that the LeaderElector will attempt to lead.
	ConfigMapMeta metav1.ObjectMeta
	Client        corev1client.ConfigMapsGetter
	LockConfig    ResourceLockConfig
	cm            *v1.ConfigMap
}

// Get returns the election record from a ConfigMap Annotation
func (cml *ConfigMapLock) Get(ctx context.Context) (*LeaderElectionRecord, []byte, error) {
	var record LeaderElectionRecord
	var err error
	cml.cm, err = cml.Client.ConfigMaps(cml.ConfigMapMeta.Namespace).Get(ctx, cml.ConfigMapMeta.Name, metav1.GetOptions{})
	if err != nil {
		return nil, nil, err
	}
	if cml.cm.Annotations == nil {
		cml.cm.Annotations = make(map[string]string)
	}
	recordStr, found := cml.cm.Annotations[LeaderElectionRecordAnnotationKey]
	recordBytes := []byte(recordStr)
	if found {
		if err := json.Unmarshal(recordBytes, &record); err != nil {
			return nil, nil, err
		}
	}
	return &record, recordBytes, nil
}

// Create attempts to create a LeaderElectionRecord annotation
func (cml *ConfigMapLock) Create(ctx context.Context, ler LeaderElectionRecord) error {
	recordBytes, err := json.Marshal(ler)
	if err != nil {
		return err
	}
	cml.cm, err = cml.Client.ConfigMaps(cml.ConfigMapMeta.Namespace).Create(ctx, &v1.ConfigMap{
		ObjectMeta: metav1.ObjectMeta{
			Name:      cml.ConfigMapMeta.Name,
			Namespace: cml.ConfigMapMeta.Namespace,
			Annotations: map[string]string{
				LeaderElectionRecordAnnotationKey: string(recordBytes),
			},
		},
	}, metav1.CreateOptions{})
	return err
}

// Update will update an existing annotation on a given resource.
func (cml *ConfigMapLock) Update(ctx context.Context, ler LeaderElectionRecord) error {
	if cml.cm == nil {
		return errors.New("configmap not initialized, call get or create first")
	}
	recordBytes, err := json.Marshal(ler)
	if err != nil {
		return err
	}
	if cml.cm.Annotations == nil {
		cml.cm.Annotations = make(map[string]string)
	}
	cml.cm.Annotations[LeaderElectionRecordAnnotationKey] = string(recordBytes)
	cm, err := cml.Client.ConfigMaps(cml.ConfigMapMeta.Namespace).Update(ctx, cml.cm, metav1.UpdateOptions{})
	if err != nil {
		return err
	}
	cml.cm = cm
	return nil
}

// RecordEvent in leader election while adding meta-data
func (cml *ConfigMapLock) RecordEvent(s string) {
	if cml.LockConfig.EventRecorder == nil {
		return
	}
	events := fmt.Sprintf("%v %v", cml.LockConfig.Identity, s)
	cml.LockConfig.EventRecorder.Eventf(&v1.ConfigMap{ObjectMeta: cml.cm.ObjectMeta}, v1.EventTypeNormal, "LeaderElection", events)
}

// Describe is used to convert details on current resource lock
// into a string
func (cml *ConfigMapLock) Describe() string {
	return fmt.Sprintf("%v/%v", cml.ConfigMapMeta.Namespace, cml.ConfigMapMeta.Name)
}

// Identity returns the Identity of the lock
func (cml *ConfigMapLock) Identity() string {
	return cml.LockConfig.Identity
}

// Identity returns the Identity of the lock
func (cml *ConfigMapLock) Key() string {
	return cml.LockConfig.Key
}


text:
require_relative '../../helper'

# TODO: Messy. Break into tests per state.
describe 'User::Payment new withdrawal' do
  before do
    @user    = new_user
    deposit  = @user.deposit BigMoney.new('10', :usd)
    deposit.complete!

    @payment = @user.withdraw BigMoney.new('10', :usd)
  end

  it 'must create payment object' do
    assert_kind_of Fundry::Payment, @payment
  end

  it 'must create payment object with new state' do
    assert_equal 'new', @payment.state
    assert_equal @payment.payment_states.first.status, @payment.state
  end

  it 'must have transfer for new state' do
    assert_kind_of Fundry::Transfer, @payment.transfer
  end

  it 'must update account balance' do
    assert_equal BigMoney.new('0', :usd), @user.balance
  end
end

describe 'User::Payment complete withdrawal' do
  before do
    @user    = new_user
    deposit  = @user.deposit BigMoney.new('10', :usd)
    deposit.complete!

    @payment = @user.withdraw BigMoney.new('10', :usd)
  end

  it 'must update state when payment is complete' do
    @payment.complete!
    assert_equal 'complete', @payment.state
    assert_equal @payment.payment_states.first(order: [:created_at.desc, :id.desc]).status, @payment.state
  end
end

describe 'User::Payment rejected withdrawal' do
  before do
    @user    = new_user
    deposit  = @user.deposit BigMoney.new('10', :usd)
    deposit.complete!

    @payment = @user.withdraw BigMoney.new('10', :usd)
  end

  it 'must refund amount when payment is rejected' do
    @payment.reject!
    assert_equal 'rejected', @payment.state
    assert_equal BigMoney.new('10', :usd), @user.balance
  end
end


text:
Stackdriver Debugger: Can insert in a FOR statement
--FILE--
<?php

var_dump(stackdriver_debugger_add_logpoint('code.php', 7, 'INFO', 'Logpoint hit!'));

require_once(__DIR__ . '/code.php');

$sum = loop(10);

echo "Sum is {$sum}\n";

$logpoints = stackdriver_debugger_list_logpoints();
echo "Number of logpoints: " . count($logpoints) . PHP_EOL;

?>
--EXPECTF--
bool(true)
Sum is 45
Number of logpoints: 10


text:
var _ = require('lodash');

/**
 * Disciple.js
 *
 *
 */

module.exports = {

    /**
     *
     */
    server: function (port, adminport) {
        var server = require(__dirname+'/server.js');
        if (adminport>0) server.admin(parseInt(adminport));
        return server.init(parseInt(port));
    },

    /**
     *
     */
    client: function (host, port, disciples) {
        var client = require(__dirname+'/client.js');
        return client.init(host, parseInt(port), parseInt(disciples));
    },

    /**
     *
     */
    admin: function (host, port) {
        var admin = require(__dirname+'/admin.js');
        return admin().init(host, parseInt(port));
    }

};


text:
/**
 * Import tweets from exported Twitter archive.
 * Less information than data from Twitter API.
 * Date format inconsistent with Twitter API data but both formats can be used to create JavaScript Date objects.
 */

var fs        = require('fs'),
	util      = require('uber-util'),
	twitUtil  = require('../lib/util-twitter.js'),
	backup    = require('../backup/backup.js'),
	persist   = require('../backup/persist.js'),
	dir       = require('../lib/config.js').twitterExport.dir,
	couch     = require('../database/couchdb.js'),
	filenames = fs.readdirSync(dir),
	Grailbird = { data : {} },
	tweets    = [],
	oldTweets = 0,
	newTweets = 0,
	errors    = 0,
	db;

process.on('exit', function () {
	console.log('existing tweets: ' + oldTweets);
	console.log('saved tweets: ' + newTweets);
	console.log('total tweets: ' + (oldTweets + newTweets));
});

couch.on('dbReady', function () {
	db = couch.db;
	readFiles();
	loadTweets();
});

function readFiles () {
	console.log('reading files');
	filenames.forEach(function (filename) {
		eval(fs.readFileSync(dir + filename, { encoding : 'utf8' }));
	});
	console.log(filenames.length + ' files read');
	for (var month in Grailbird.data) {
		var monthTweets = Grailbird.data[month];
		tweets = tweets.concat(monthTweets);
	}
	console.log(tweets.length + ' tweets read');
}

function loadTweets () {
	console.log('loading tweets');
	tweets.forEach(loadTweet);
}

function loadTweet (tweet) {
	tweet.created_at = formatDate(tweet.created_at);
	persist.saveTweet(tweet, function (error, response) {
		if (error && error.error === 'conflict') {
			oldTweets++;
		} else if (error) {
			errors++;
		} else {
			newTweets++;
		}
	});
}

/**
 * Format Twitter archive date format to Twitter API date format.
 *
 * input:  "2008-11-11 12:34:56 +0000"
 * output: "Tue Nov 11 12:34:56 +0000 2008"
 *
 * Time === 00:00:00 kinda blows. We can't definitively map this to a date.
 * Boo Twitter archive export.

 * input:  "2008-11-11 00:00:00 +0000"
 */
function formatDate (dateString) {
	var date = new Date(dateString);
	var utcString = date.toUTCString().split(',');
	var utcBits = utcString[1].trim().split(' ');
	return utcString[0] + ' ' + utcBits[1]  + ' ' + utcBits[0] + ' ' + utcBits[3]  + ' +0000 ' + utcBits[2];
}


text:
/*
 * main.cpp
 *
 *  Created on: Oct 17, 2016
 *      Author: roy_shilkrot
 */

#include "Reconstruction.h"

#include <opencv2/core/core.hpp>
#include <opencv2/highgui.hpp>

using namespace std;
using namespace cv;

int main(int argc, char** argv) {
	Mat imageLeft  = imread("input-left.jpg");
	Mat imageRight = imread("input-right.jpg");

	Reconstruction reconstruction(imageLeft, imageRight);
	reconstruction.reconstruct();
}


text:
package nitezh.ministock;

import nitezh.ministock.activities.widget.WidgetProvider1x2;

public class WidgetProvider extends WidgetProvider1x2 {
}


text:
package com.zhihu.matisse.internal.utils;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Environment;
import android.provider.MediaStore;
import android.support.v4.app.Fragment;
import android.support.v4.content.FileProvider;
import android.support.v4.os.EnvironmentCompat;

import com.zhihu.matisse.internal.entity.CaptureStrategy;

import java.io.File;
import java.io.IOException;
import java.lang.ref.WeakReference;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class MediaStoreCompat {

    private final WeakReference<Activity> mContext;
    private final WeakReference<Fragment> mFragment;
    private       CaptureStrategy         mCaptureStrategy;
    private       Uri                     mCurrentPhotoUri;
    private       String                  mCurrentPhotoPath;

    public MediaStoreCompat(Activity activity) {
        mContext = new WeakReference<>(activity);
        mFragment = null;
    }

    public MediaStoreCompat(Activity activity, Fragment fragment) {
        mContext = new WeakReference<>(activity);
        mFragment = new WeakReference<>(fragment);
    }

    /**
     * Checks whether the device has a camera feature or not.
     *
     * @param context a context to check for camera feature.
     * @return true if the device has a camera feature. false otherwise.
     */
    public static boolean hasCameraFeature(Context context) {
        PackageManager pm = context.getApplicationContext().getPackageManager();
        return pm.hasSystemFeature(PackageManager.FEATURE_CAMERA);
    }

    public void setCaptureStrategy(CaptureStrategy strategy) {
        mCaptureStrategy = strategy;
    }

    public void dispatchCaptureIntent(Context context, int requestCode) {
        Intent captureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        if (captureIntent.resolveActivity(context.getPackageManager()) != null) {
            File photoFile = null;
            try {
                photoFile = createImageFile();
            } catch (IOException e) {
                e.printStackTrace();
            }

            if (photoFile != null) {
                mCurrentPhotoPath = photoFile.getAbsolutePath();
                mCurrentPhotoUri = FileProvider.getUriForFile(mContext.get(),
                        mCaptureStrategy.authority, photoFile);
                captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, mCurrentPhotoUri);
                captureIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
                if (mFragment != null) {
                    mFragment.get().startActivityForResult(captureIntent, requestCode);
                } else {
                    mContext.get().startActivityForResult(captureIntent, requestCode);
                }
            }
        }
    }

    private File createImageFile() throws IOException {
        // Create an image file name
        String timeStamp =
                new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()).format(new Date());
        String imageFileName = String.format("JPEG_%s.jpg", timeStamp);
        File storageDir;
        if (mCaptureStrategy.isPublic) {
            storageDir = Environment.getExternalStoragePublicDirectory(
                    Environment.DIRECTORY_PICTURES);
        } else {
            storageDir = mContext.get().getExternalFilesDir(Environment.DIRECTORY_PICTURES);
        }

        // Avoid joining path components manually
        File tempFile = new File(storageDir, imageFileName);

        // Handle the situation that user's external storage is not ready
        if (!Environment.MEDIA_MOUNTED.equals(EnvironmentCompat.getStorageState(tempFile))) {
            return null;
        }

        return tempFile;
    }

    public Uri getCurrentPhotoUri() {
        return mCurrentPhotoUri;
    }

    public String getCurrentPhotoPath() {
        return mCurrentPhotoPath;
    }
}


text:
module KnbAuction
  class Auction < ActiveRecord::Base
    attr_accessible :product_id, :product, :created_by_id, :end_at, :start_at, :reserve, :winner_notified_at
    attr_accessor :status, :highest_bidder, :duration

    belongs_to :product
    has_many :bids
    accepts_nested_attributes_for :bids, allow_destroy: true

    validates_presence_of :product_id
    validates_presence_of :start_at
    validates_presence_of :end_at

    after_initialize :initialize_working_variables
    after_save :enqueue_auction_close

    DURATION_WHITELIST = [['1 Day', 1.day.to_i], ['1 Week', 1.week.to_i], ['2 Weeks', 2.weeks.to_i], ['3 Weeks', 3.weeks.to_i], ['1 Month', 1.month.to_i]]
    TempBid = Struct.new(:owner, :goodles, :owner_name)
    TempOwner = Struct.new(:full_name, :goodles)

    def enqueue_auction_close
      # self.delay(:run_at => end_at, :queue => 'auction').close_auction
      delay(:run_at => 30.seconds.from_now, :queue => 'auction').close_auction
    end

    def close_auction
      # return unless auction_current
      delay.deduct_goodles
      delay.send_guardian_email(:run_at => 1.minute.from_now)
      delay.send_admin_email(:run_at => 1.minute.from_now)
    end

    def auction_current
      updated_at == Auction.find(:id).updated_at
    end

    def deduct_goodles
      "Did it!"
    end

    def send_guardian_email
      "Hello!"
    end

    def send_admin_email
      "Hello!"
    end

    def initialize_working_variables
      if start_at && end_at
        @status = auction_state_by_datetime
        @duration = (end_at - start_at).to_i
      end
    end

    def self.new_for_auction(auction_params = {})
      Auction.new(Auction.adjusted_parameters(auction_params))
    end

    def update_attributes_for_auction(auction_params = {})
      self.update_attributes(Auction.adjusted_parameters(auction_params))
    end

    def self.adjusted_parameters(auction_params)
      defaults = {end_at: duration_to_end_at(auction_params)}
      auction_params.delete(:duration)

      auction_params.reverse_merge(defaults)
    end

    def self.active
      where("start_at <= :now AND end_at >= :now", now: Time.now ).order('start_at asc')
    end

    def active?
      time_now = DateTime.now
      (start_at <= time_now) && (end_at >= time_now)
    end

    def self.closed
      where("end_at <= :now", now: Time.now ).order('start_at asc')
    end

    def closed?
      now = DateTime.now
      end_at < now
    end

    def self.upcoming
      where("start_at >= :now", now: Time.now ).order('start_at asc')
    end

    def upcoming?
      now = DateTime.now
      start_at > now
    end

    def self.bid_liability(user)
      find_by_highest_bidder(user).inject(0) { |goodles, auction|  goodles += auction.high_bid.goodles}
    end

    def duration
      return nil if end_at.nil? || start_at.nil?
      end_at - start_at
    end

    def self.goodles_to_spend(user)
      return 0 unless user.goodles
      goodles_liquid = user.goodles - Auction.bid_liability(user)
      return 0 if goodles_liquid <= 0
      goodles_liquid.to_i
    end

    def self.find_by_highest_bidder(user)
      self.all.select do |auction|
        if auction.high_bidder == user
          auction
        else
          next
        end
      end
    end

    def product_name
      product.name
    end

    def product_description
      if product.description
        product.description
      else
        ""
      end
    end

    def bids_count
      bids.size
    end

    def high_bid
      @high_bid ||= (bids.sort_by(&:goodles).last || empty_bid)
    end

    def high_bid_goodles
      high_bid.goodles
    end

    def empty_bid
      temp_bid
    end

    def temp_bid
      TempBid.new(temp_owner, reserve.to_i, "")
    end

    def temp_owner
      TempOwner.new("", 0)
    end

    def high_bidder
      high_bid.owner
    end

    def auction_state_by_datetime
      case
      when self.active?
        :active
      when self.upcoming?
        :upcoming
      when self.closed?
        :closed
      else
        :unknown
      end
    end

    def self.duration_to_end_at(auction_params)
      DateTime.parse(auction_params[:start_at]) + auction_params[:duration].to_i.seconds
    end
  end
end


text:
var counter1 = require('./util/counter.js');
var counter2 = require('./util/counter.js');

console.log(counter1.count());
console.log(counter2.count());
console.log(counter2.count());


text:
<?xml version="1.0" ?>
<install version="2.0" type="plugin" plugin="article" core="1" editable="1">
    <name>WF_ARTICLE_TITLE</name>
    <version>2.4.3</version>
    <creationDate>11 September 2014</creationDate>
    <author>Ryan Demmer</author>
    <authorEmail>info@joomlacontenteditor.net</authorEmail>
    <authorUrl>http://www.joomlacontenteditor.net/</authorUrl>
    <copyright>Ryan Demmer</copyright>
    <license>GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html</license>
    <description>WF_ARTICLE_DESC</description>
    <icon>readmore,pagebreak</icon>
    <params group="standard">
        <!--param name="show_readmore" type="list" default="1" label="WF_ARTICLE_PARAM_SHOW_READMORE" description="WF_ARTICLE_PARAM_SHOW_READMORE_DESC">
            <option value="0">WF_OPTION_NO</option>
            <option value="1">WF_OPTION_YES</option>
        </param>
        <param name="show_pagebreak" type="list" default="1" label="WF_ARTICLE_PARAM_SHOW_PAGEBREAK" description="WF_ARTICLE_PARAM_SHOW_PAGEBREAK_DESC">
            <option value="0">WF_OPTION_NO</option>
            <option value="1">WF_OPTION_YES</option>
        </param-->
        <!--param name="hide_xtd_btns" type="radio" default="0" label="WF_ARTICLE_PARAM_HIDE_BUTTONS" description="WF_ARTICLE_PARAM_HIDE_BUTTONS_DESC">
            <option value="1">WF_OPTION_YES</option>
            <option value="0">WF_OPTION_NO</option>
        </param-->
    </params>
    <params group="buttons">
            <param name="buttons" class="checklist buttonlist" type="list" multiple="multiple" default="readmore,pagebreak" label="WF_PARAM_BUTTONS" description="WF_PARAM_BUTTONS_DESC">
                <option value="readmore">Readmore</option>
                <option value="pagebreak">Pagebreak</option>
            </param>
        </params>
    <help>
        <topic key="article.about" title="WF_ARTICLE_HELP_ABOUT" />
    </help>
    <languages></languages>
</install>


text:
<?php
/**
 * Created by PhpStorm.
 * User: Pavel
 * Date: 8.3.2015
 * Time: 23:57
 */

namespace backend\assets;

use kartik\base\AssetBundle;

class FormRoomAsset extends AssetBundle
{
	public $basePath = '@webroot';
	public $baseUrl = '@web';
	public $css = [
		'css/form-room.css'
	];
	public $js = [
		'js/form-room.js'
	];
	public $depends = [
		'backend\assets\AppAsset'
	];

}


text:
package howitworks.scalaz

class ReaderDemo extends wp.Spec {

  "hello reader" in {
    import scalaz._
    import Scalaz._

    //compared to cats reader here we don't need to wrap functions into Reader class

    val size: String => Int = _.size
    val ovalLettersCount: String => Int = _.count(List('q', 'Q', 'o', 'O', 'p', 'P', 'd', 'D', 'R', 'a','A','g','b').contains(_))
    val lettersDistribution: String => Map[Char, Int] = _.foldLeft(Map[Char, Int]())((acc, curr) => acc.updated(curr, 1 + acc.getOrElse(curr, 0)))

    //and you would like to create 3rd function based on 'returned values' of these above functions
    //standard approach is:
    val stringAnalysis: String => String = {s =>
      val sSize = size(s)
      val sOvalLettersSize = ovalLettersCount(s)
      val sLetterDistribution = lettersDistribution(s).toList.sortBy(x => (x._1.toUpper, x._1)).mkString(", ")
      s"The string '${s}' contains $sSize letters, $sOvalLettersSize oval letters and in general here this is distribution of letters: $sLetterDistribution"
    }

    //see howitworks.cats.ReaderDemo
    val stringAnalysis3 = for {
      input <- identity[String] _
      size <- size
      ovalCount <- ovalLettersCount
      dist <- lettersDistribution
      distFormatted = dist.toList.sortBy(x => (x._1.toUpper, x._1)).mkString(", ")
    } yield s"The string '$input' contains $size letters, $ovalCount oval letters and in general here this is distribution of letters: $distFormatted"

    val exampleIn = "what are reader monads all about"
    val expectedOut = "The string 'what are reader monads all about' contains 32 letters, 11 oval letters and in general here this is distribution of letters: ( ,5), (a,6), (b,1), (d,2), (e,3), (h,1), (l,2), (m,1), (n,1), (o,2), (r,3), (s,1), (t,2), (u,1), (w,1)"

    stringAnalysis3(exampleIn) mustBe expectedOut
  }
}


text:
var searchData=
[
  ['simulation_20models_3a_20demography_20group',['Simulation Models: Demography Group',['../group__demography.html',1,'']]],
  ['simulation_20models_3a_20inbreeding_2c_20mutation_2c_20and_20dominance_20group',['Simulation Models: Inbreeding, Mutation, and Dominance Group',['../group__in__mut__dom.html',1,'']]],
  ['simulation_20models_3a_20migration_20group',['Simulation Models: Migration Group',['../group__migration.html',1,'']]],
  ['simulation_20models_3a_20preserve_20and_20sampling_20group',['Simulation Models: Preserve and Sampling Group',['../group__pres__samp.html',1,'']]],
  ['simulation_20models_3a_20selection_20group',['Simulation Models: Selection Group',['../group__selection.html',1,'']]]
];


text:
export interface IUser {
  _id: string;
  created?: Date;
  updated?: Date;
  username?: string | null;
  emails?: string[];
  phones?: string[];
  gender?: string;
  firstName?: string | null;
  lastName?: string | null;
  isAdmin: boolean;
  isActive: boolean;
  photo?: string | null;
  socialId?: string | null;
  socialType?: string | null;
}


text:
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

  MICROGRAPHIA:

OR SOME

Physiological Descriptions

O F

 MINUTE BODIES

 MADE BY

MAGNIFYING GLASSES.

WITH

OBSERVATIONS and INQUIRIES
  thereupon.

 By R. HOOKE
  , Fellow of the ROYAL SOCIETY .

LONDON, Printed by Jo.
        Martyn, and Ja. Allestry,
        Printers to the ROYAL SOCIETY , and are to
        be sold at their Shop at the Bell in S. Paul's Church-yard. M
        D C L X V.


text:
import sqlite3 as sql
import pandas as pd
from DataGeneration.MapLocation import MapLocation

class DatabaseHandler:

    def __init__(self, db_file_name='db.sqlite3', full=True):
        if full:
            self.conn = sql.connect(db_file_name)
            self.initialize_db()

    def initialize_db(self):
        self._add_addresses_table()
        self._add_stops_table()
        self._add_routes_table()
        self.conn.commit()

    def _add_addresses_table(self):
        c = self.conn.cursor()
        c.execute("""
                  CREATE TABLE IF NOT EXISTS addresses
                  (id INTEGER PRIMARY KEY,
                  latitude real NOT NULL,
                  longitude real NOT NULL)
                  """)
        c.close()

    def _add_stops_table(self):
        c = self.conn.cursor()
        c.execute("""
                  CREATE TABLE IF NOT EXISTS stops
                  (id INTEGER PRIMARY KEY,
                  stop_id INTEGER NOT NULL,
                  stop_name text NOT NULL,
                  latitude real NOT NULL,
                  longitude real NOT NULL)
                  """)
        c.close()

    def _add_routes_table(self):
        c = self.conn.cursor()
        c.execute("""
                  CREATE TABLE IF NOT EXISTS routes
                  (id INTEGER PRIMARY KEY,
                  address_id INTEGER NOT NULL,
                  stop_id INTEGER NOT NULL,
                  distance INTEGER NOT NULL,
                  time INTEGER NOT NULL,
                  FOREIGN KEY(address_id) REFERENCES addresses(id),
                  FOREIGN KEY(stop_id) REFERENCES stops(id))
                  """)
        c.close()

    def add_addresses_from_file(self, file_name):
        df = pd.read_csv(file_name)
        df.to_sql('addresses', self.conn, if_exists='append', index=False)

    def add_stops_from_file(self, file_name):
        df = pd.read_csv(file_name)
        df = df[["stop_id", "stop_name", "longitude", "latitude"]]
        df.to_sql('stops', self.conn, if_exists='append', index=False)

    def add_address(self, location):
        if not hasattr(location, 'latitude'):
            raise TypeError('location must have latitude property')
        if not hasattr(location, 'longitude'):
            raise TypeError('location must have longitude property')
        c = self.conn.cursor()
        if location.id != 0:
            c.execute("INSERT INTO addresses (id, latitude, longitude) "
                      "VALUES (?, ?, ?)",
                      (location.id, location.latitude, location.longitude))
        else:
            c.execute("INSERT INTO addresses (latitude, longitude) "
                      "VALUES (?, ?)", (location.latitude, location.longitude))
        self.conn.commit()
        c.close()

    def add_stop(self, location):
        if not hasattr(location, 'latitude'):
            raise TypeError('location must have latitude property')
        if not hasattr(location, 'longitude'):
            raise TypeError('location must have longitude property')
        c = self.conn.cursor()
        if location.id != 0:
            c.execute("INSERT INTO stops (id, latitude, longitude) "
                      "VALUES (?, ?, ?)",
                      (location.id, location.latitude, location.longitude))
        else:
            c.execute("INSERT INTO stops (latitude, longitude) "
                      "VALUES (?, ?)",
                      (location.latitude, location.longitude))
        self.conn.commit()
        c.close()

    def add_route(self, address, stop, distance, time):
        c = self.conn.cursor()
        c.execute("INSERT INTO routes "
                  "(address_id, stop_id, distance, time) "
                  "VALUES (?, ?, ?, ?)",
                  (address, stop, distance, time))
        self.conn.commit()
        c.close()

    # Information Retrieval
    def get_address_generator(self, verbose=False):
        c = self.conn.cursor()
        c.execute("SELECT "
                  "addresses.latitude, addresses.longitude, addresses.id "
                  "FROM addresses LEFT JOIN routes "
                  "ON routes.address_id = addresses.id "
                  "WHERE routes.id IS NULL")
        if verbose:
            print("fetching all addresses without routes...")
        rows = c.fetchall()
        c.close()
        if verbose:
            print("fetched {} addresses".format(len(rows)))
        for row in rows:
            yield MapLocation(latitude=row[0], longitude=row[1], id=row[2])

    def get_all_stops(self):
        c = self.conn.cursor()
        c.execute("SELECT * from stops")
        rows = c.fetchall()
        c.close()
        return [MapLocation(latitude=row[3], longitude=row[4], id=row[0])
                for row in rows]

    def output_routes(self, file_path, closest_stops_only=False):
        """

        Args:
            file_path (str): the file path to save the .csv output
            closest_stops_only (bool): If true, only save the stops that are the
                closest (by the distance column) to each address. If there are
                multiple stops per address that have the same distance, both are
                returned.
        Returns:
            A pandas DataFrame with the following columns:
                address_latitude
                address_longitude
                stop_latitude
                stop_longitude
                distance
                time
            This dataframe contains each route in the database that has been
            collected by the begin() function of the DataGenerator class. If the
            closest_stops_only parameter is set to true, then the output only
            contains stops for each address which are equal to minimum distance
            for routes associated with specific addresses. This means that it
            can return multiple stops per address if their associated routes
            have equal distances.
        """
        if closest_stops_only:
            return self.routes_dataframe_closest_stops().to_csv(file_path)
        else:
            return self.routes_dataframe().to_csv(file_path)

    def routes_dataframe(self):
        """
        Returns:
            all routes along with the stop and address latitudes and longitudes
            as a pandas DataFrame.
        """
        return pd.read_sql_query(
            "SELECT "
            "addresses.latitude AS address_latitude,"
            "addresses.longitude AS address_longitude,"
            "stops.latitude AS stop_latitude,"
            "stops.longitude AS stop_longitude,"
            "routes.distance AS distance,"
            "routes.time AS time "
            "FROM routes "
            "LEFT JOIN addresses ON routes.address_id = addresses.id "
            "LEFT JOIN stops ON routes.stop_id = stops.id",
            self.conn)

    def routes_dataframe_closest_stops(self):
        """
        Collects all routes and groups them by address. Returns the nearest stop
        to each address as well as the time and distance to that stop. Sorts by
        distance.
        """
        df = self.routes_dataframe()
        df_grouped = df.groupby(['address_latitude', 'address_longitude']).\
            agg({'distance': 'min'})
        df_grouped = df_grouped.reset_index()
        df_grouped = df_grouped.rename(columns={'distance':'distance_min'})
        df = pd.merge(df, df_grouped, how='left',
                      on=['address_latitude', 'address_longitude'])
        df = df[df['distance'] == df['distance_min']]
        return df[['address_latitude', 'address_longitude',
                   'stop_latitude', 'stop_longitude',
                   'distance', 'time']].reset_index()


text:
/* eslint-disable security/detect-object-injection */

/**
 * Given a module string returns in an object
 * - the module name
 * - the protocol (when encoded in the string)
 * - the mimeType (when encoded in the string)
 *
 * See https://nodejs.org/api/esm.html#esm_urls
 *
 * would've loved to use url.URL here, but that doesn't extract the mime type
 * (if there's a default node API that does this I'm all ears)
 *
 * @param {string} pString
 * @returns {any}
 */
module.exports = function extractModuleAttributes(pString) {
  let lReturnValue = { module: pString };
  const lModuleAttributes = pString.match(
    // eslint-disable-next-line security/detect-unsafe-regex, unicorn/no-unsafe-regex
    /^((node:|file:|data:)(([^,]+),)?)(.+)$/
  );
  const lProtocolPosition = 2;
  const lMimeTypePosition = 4;
  const lModulePosition = 5;

  if (lModuleAttributes) {
    lReturnValue.module = lModuleAttributes[lModulePosition];
    if (lModuleAttributes[lProtocolPosition]) {
      lReturnValue.protocol = lModuleAttributes[lProtocolPosition];
    }
    if (lModuleAttributes[lMimeTypePosition]) {
      lReturnValue.mimeType = lModuleAttributes[lMimeTypePosition];
    }
  }

  return lReturnValue;
};


text:
NI_FIX_CATEGORY_BUG(UISearchBar_NIStyleable)

///////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////
@implementation UISearchBar (NIStyleable)

///////////////////////////////////////////////////////////////////////////////////////////////////
- (void)applySearchBarStyleWithRuleSet:(NICSSRuleset *)ruleSet inDOM:(NIDOM*) dom {
  if ([ruleSet hasTintColor]) { self.tintColor = ruleSet.tintColor; }
}

///////////////////////////////////////////////////////////////////////////////////////////////////
-(void)applyViewStyleWithRuleSet:(NICSSRuleset *)ruleSet inDOM:(NIDOM *)dom {
    [self applyViewStyleWithRuleSet:ruleSet inDOM:dom];
    [self applySearchBarStyleWithRuleSet:ruleSet inDOM:dom];
}

///////////////////////////////////////////////////////////////////////////////////////////////////
- (void)applyStyleWithRuleSet:(NICSSRuleset *)ruleSet {
}

@end


text:
/*
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.gbif.common.parsers.geospatial;

import java.util.HashSet;
import java.util.List;
import java.util.Set;

import org.apache.commons.math3.util.Precision;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * Utilities for dealing with CellId.
 */
public class CellIdUtils {

  private static final Logger LOGGER = LoggerFactory.getLogger(CellIdUtils.class);

  private static final int MAX_LATITUDE = 90;
  private static final int MIN_LATITUDE = -MAX_LATITUDE;
  private static final int MAX_LONGITUDE = 180;
  private static final int MIN_LONGITUDE = -MAX_LONGITUDE;

  private CellIdUtils() {
    throw new UnsupportedOperationException("Can't initialize class");
  }

  /**
   * Determines the cell id for the Lat / Long provided.
   *
   * @param latitude  Which may be null
   * @param longitude Which may be null
   *
   * @return The cell id for the Lat Long pair
   *
   * @throws UnableToGenerateCellIdException
   *          Should the lat long be null or invalid
   */
  public static int toCellId(Double latitude, Double longitude) throws UnableToGenerateCellIdException {
    LOGGER.debug("Getting cell for [{},{}]", latitude, longitude);

    if (latitude == null || latitude < MIN_LATITUDE || latitude > MAX_LATITUDE || longitude < MIN_LONGITUDE
        || longitude > MAX_LONGITUDE) {
      throw new UnableToGenerateCellIdException(
        "Latitude[" + latitude + "], Longitude[" + longitude + "] cannot be converted to a cell id");
    } else {
      int la = getCellIdFor(latitude);
      int lo = getMod360CellIdFor(longitude);
      return la + lo;
    }
  }

  /**
   * Get mod 360 cell id.
   */
  public static int getMod360CellIdFor(double longitude) {
    return Double.valueOf(Math.floor(longitude + MAX_LONGITUDE)).intValue();
  }

  /**
   * Get cell id.
   */
  public static int getCellIdFor(double latitude) {
    return Double.valueOf(Math.floor(latitude + MAX_LATITUDE)).intValue() * 360;
  }

  /**
   * Returns true if the supplied cell id lies in the bounding box demarcated by the min and max cell ids supplied.
   */
  public static boolean isCellIdInBoundingBox(int cellId, int minCellId, int maxCellId) throws Exception {
    return cellId >= minCellId && cellId <= (maxCellId - 361) && (cellId % 360) >= (minCellId % 360)
           && (cellId % 360) <= ((maxCellId - 361) % 360);
  }

  /**
   * Determines the centi cell id for the given values
   *
   * @param latitude  Which may be null
   * @param longitude Which may be null
   *
   * @return The centi cell id within the cell for the lat long
   *
   * @throws UnableToGenerateCellIdException
   *          Shoudl the lat long be null or invalid
   */
  public static int toCentiCellId(Double latitude, Double longitude) throws UnableToGenerateCellIdException {
    if (latitude == null || latitude < MIN_LATITUDE || latitude > MAX_LATITUDE || longitude < MIN_LONGITUDE
        || longitude > MAX_LONGITUDE) {
      throw new UnableToGenerateCellIdException(
        "Latitude[" + latitude + "], Longitude[" + longitude + "] cannot be " + "converted to a centi cell id");
    } else {

      //get decimal value for up to 4 decimal places
      //17.2-> 172000 -> 2000
      int la = Math.abs((int) (latitude * 10000) % 10000);
      if (latitude < 0) la = 10000 - la;
      la = (la / 1000) % 10;
      int lo = Math.abs((int) (longitude * 10000) % 10000);
      if (longitude < 0) lo = 10000 - lo;
      lo = (lo / 1000) % 10;

      int centiCellId = (la * 10) + lo;
      return Math.abs(centiCellId);
    }
  }

  /**
   * Returns the box of the given cell This may require some more work to avoid divide rounding errors
   *
   * @param cellId To return the lat long box of
   *
   * @return The box
   */
  public static LatLngBoundingBox toBoundingBox(int cellId) {
    int longitude = (cellId % 360) - MAX_LONGITUDE;
    int latitude = MIN_LATITUDE;
    if (cellId > 0) {
      latitude = Double.valueOf(Math.floor(cellId / 360)).intValue() - MAX_LATITUDE;
    }
    return new LatLngBoundingBox(longitude, latitude, longitude + 1, latitude + 1);
  }

  /**
   * Returns the box of the given cell and centi cell An attempt has been made to avoid rounding errors with doubles,
   * but may need revisited
   *
   * @param cellId      To return the lat long box of
   * @param centiCellId within the box
   *
   * @return The box
   */
  public static LatLngBoundingBox toBoundingBox(int cellId, int centiCellId) {
    int longitudeX10 = 10 * ((cellId % 360) - MAX_LONGITUDE);
    int latitudeX10 = -900;
    if (cellId > 0) {
      latitudeX10 = 10 * (Double.valueOf(Math.floor(cellId / 360)).intValue() - MAX_LATITUDE);
    }

    double longOffset = (centiCellId % 10);
    double latOffset = 0;
    if (centiCellId > 0) {
      latOffset = centiCellId / 10;
    }

    double minLatitude = (latitudeX10 + latOffset) / 10;
    double minLongitude = (longitudeX10 + longOffset) / 10;
    double maxLatitude = (latitudeX10 + latOffset + 1) / 10;
    double maxLongitude = (longitudeX10 + longOffset + 1) / 10;
    return new LatLngBoundingBox(minLongitude, minLatitude, maxLongitude, maxLatitude);
  }

  /**
   * Gets the list of cells that are enclosed within the bounding box. Cells that are partially enclosed are returned
   * also
   * TODO implement this properly, the current version will include cells that are partially included on the bottom and
   * left, but not the top and right
   *
   * @return The cells that are enclosed by the bounding box
   *
   * @throws UnableToGenerateCellIdException
   *          if the lat longs are invalid
   */
  public static Set<Integer> getCellsEnclosedBy(double minLat, double maxLat, double minLong, double maxLong)
    throws UnableToGenerateCellIdException {
    if (minLat < MIN_LATITUDE) minLat = MIN_LATITUDE;
    if (maxLat > MAX_LATITUDE) maxLat = MAX_LATITUDE;
    if (minLong < MIN_LONGITUDE) minLong = MIN_LONGITUDE;
    if (maxLong > MAX_LONGITUDE) maxLong = MAX_LONGITUDE;

    LOGGER.debug("Establishing cells enclosed by: {}:{}   {}:{}", new Object[] {minLat, maxLat, minLong, maxLong});

    int lower = toCellId(minLat, minLong);
    int upper = toCellId(maxLat, maxLong);

    LOGGER.debug("Unprocessed cells: {} -> {}", lower, upper);

    // if the BB upper right corner is on a grid, then it needs flagged
    if (Math.ceil(maxLong) == Math.floor(maxLong)) {
      LOGGER.debug("Longitude lies on a boundary");
      upper -= 1;
    }
    if (Math.ceil(maxLat) == Math.floor(maxLat)) {
      LOGGER.debug("Latitude lies on a boundary");
      upper -= 360;
    }

    LOGGER.debug("Getting cells contained in {} to {}", lower, upper);

    int omitLeft = lower % 360;
    int omitRight = upper % 360;
    if (omitRight == 0) omitRight = 360;
    Set<Integer> cells = new HashSet<Integer>();
    for (int i = lower; i <= upper; i++) {
      if (i % 360 >= omitLeft && i % 360 <= omitRight) {
        cells.add(i);
      }
    }
    return cells;
  }

  /**
   * Return a min cell id and a max cell id for this bounding box.
   *
   * @return the minCellId in int[0] and maxCellId in int[1]
   */
  public static int[] getMinMaxCellIdsForBoundingBox(double minLongitude, double minLatitude, double maxLongitude,
    double maxLatitude) throws UnableToGenerateCellIdException {

    int minCellId = toCellId(minLatitude, minLongitude);
    int maxCellId = toCellId(maxLatitude, maxLongitude);

    if (Math.ceil(maxLatitude) == Math.floor(maxLatitude) && Math.ceil(maxLongitude) == Math.floor(maxLongitude)
        && maxLongitude != 180f && maxLatitude != 90f && maxCellId > 0) {

      //the maxLongitude,maxLatitude point is on a cell intersection, hence the maxCellId should be
      // -361 the maxCellId CellIdUtils will give us i.e. the cell that is
      // 1 below and 1 to the left of the cell id retrieved
      //unless it is the 64799 cell.
      maxCellId = maxCellId - 361;
    }

    return new int[] {minCellId, maxCellId};
  }

  /**
   * Creates a bounding box for the list of unordered cell ids.
   *
   * @return a LatLngBoundingBox that encapsulates this list of cell ids.
   */
  public static LatLngBoundingBox getBoundingBoxForCells(List<Integer> cellIds) {
    if (cellIds.isEmpty()) return null;
    //first cell - gives the minLat
    //double minLatitude = toBoundingBox(cellIds.get(0)).minLat;
    //last cell - give the maxLat
    //double maxLatitude = toBoundingBox(cellIds.get(cellIds.size()-1)).maxLat;
    int minLatitudeCellId = cellIds.get(0);
    int maxLatitudeCellId = cellIds.get(cellIds.size() - 1);

    int minLongitudeCellId = cellIds.get(0);
    int maxLongitudeCellId = cellIds.get(cellIds.size() - 1);
    //the min cell (id % 360) - gives min longitude
    //the max cell (id % 360) - gives max longitude
    for (Integer cellId : cellIds) {

      Integer cellIdMod360 = cellId % 360;
      if (cellIdMod360 < (minLongitudeCellId % 360)) minLongitudeCellId = cellIdMod360;
      if (cellIdMod360 > (maxLongitudeCellId % 360)) maxLongitudeCellId = cellIdMod360;

      if (cellId < minLatitudeCellId) minLatitudeCellId = cellId;
      if (cellId > maxLatitudeCellId) maxLatitudeCellId = cellId;
    }
    double minLongitude = toBoundingBox(minLongitudeCellId).minLong;
    double minLatitude = toBoundingBox(minLatitudeCellId).minLat;
    double maxLongitude = toBoundingBox(maxLongitudeCellId).maxLong;
    double maxLatitude = toBoundingBox(maxLatitudeCellId).maxLat;

    return new LatLngBoundingBox(minLongitude, minLatitude, maxLongitude, maxLatitude);
  }

  /**
   * Returns the cell id and centi cell id for the supplied bounding box, Returning null if the supplied bounding box
   * doesnt enclose a single cell. If the bounding box encloses a single cell but not a centi cell, a Integer[] of
   * length 1 is returned with containing the cell id. Otherwise a Integer array of length 2, with Integer[0] being the
   * cell id, Integer[1] being the centi cell.
   */
  public static Integer[] getCentiCellIdForBoundingBox(double minLongitude, double minLatitude, double maxLongitude,
    double maxLatitude) throws UnableToGenerateCellIdException {

    //int[] maxMinCellIds = getMinMaxCellIdsForBoundingBox(minLongitude, minLatitude, maxLongitude, maxLatitude);
    //if(maxMinCellIds==null || (maxMinCellIds[0]!=maxMinCellIds[1]))
    //	return null;

    //Integer cellId = maxMinCellIds[0];

    //int[] maxMinCellIds = getMinMaxCellIdsForBoundingBox(minLongitude, minLatitude, maxLongitude, maxLatitude);

    if (!isBoundingBoxCentiCell(minLongitude, minLatitude, maxLongitude, maxLatitude)) {
      return null;
    }

    //ascertain whether bounding box is 0.1 by 0.1
    //if(isBoundingBoxCentiCell(minLongitude, minLatitude, maxLongitude, maxLatitude)){

    int[] maxMinCellIds = getMinMaxCellIdsForBoundingBox(minLongitude, minLatitude, maxLongitude, maxLatitude);
    Integer cellId = maxMinCellIds[0];

    int minCentiCell = toCentiCellId(minLatitude, minLongitude);
    int maxCentiCell = toCentiCellId(maxLatitude, maxLongitude);

    double maxLongitude10 = maxLongitude * 10;
    double maxLatitude10 = maxLatitude * 10;

    if (Math.ceil(maxLatitude10) == Math.floor(maxLatitude10) && Math.ceil(maxLongitude10) == Math.floor(maxLongitude10)
        && maxCentiCell > 0) {

      //the maxLongitude,maxLatitude point is on a centi cell intersection, hence the maxCentiCellId should be
      // maxCentiCellId-11 i.e. the cell that is
      // 1 below and 1 to the left of the centi cell id retrieved
      //unless it is the 100 centi cell.
      if (maxCentiCell > minCentiCell) {
        maxCentiCell = maxCentiCell - 11;
      } else {
        maxCentiCell = maxCentiCell + 9;
      }
    }

    //if(maxCentiCell==minCentiCell){
    return new Integer[] {cellId, minCentiCell};
    //}
    //}
    //return new Integer[]{cellId};
  }

  private static boolean isBoundingBoxCentiCell(double minLongitude, double minLatitude, double maxLongitude,
    double maxLatitude) {
    double width = maxLongitude > minLongitude ? maxLongitude - minLongitude : minLongitude - maxLongitude;
    double height = maxLatitude > minLatitude ? maxLatitude - minLatitude : minLatitude - maxLatitude;
    return Precision.round(height, 1) == 0.1f && Precision.round(width, 1) == 0.1f;
  }

  /**
   * For ease of conversion
   *
   * @param args See usage
   */
  public static void main(String[] args) {
    try {
      if (args.length == 1) {
        LatLngBoundingBox llbb = toBoundingBox(Integer.parseInt(args[0]));
        System.out.println(
          "CellId " + args[0] + ": minX[" + llbb.getMinLong() + "] minY[" + llbb.getMinLat() + "] maxX[" + llbb
            .getMaxLong() + "] maxY[" + llbb.getMaxLat() + "]");
      } else if (args.length == 2) {
        double lat = Double.parseDouble(args[0]);
        double lon = Double.parseDouble(args[1]);
        System.out.println("lat[" + lat + "] long[" + lon + "] = cellId: " + toCellId(lat, lon));
      } else {
        System.out.println("Provide either a 'cell id' or 'Lat Long' params!");
      }
    } catch (NumberFormatException | UnableToGenerateCellIdException e) {
      LOGGER.error("Error converting bounding box", e);
    }
  }
}


text:
#ifndef _SMM_CPU_IO_H_
#define _SMM_CPU_IO_H_

#include <Protocol/SmmCpuIo2.h>

#define EFI_SMM_CPU_IO_GUID \
  { \
    0x5f439a0b, 0x45d8, 0x4682, {0xa4, 0xf4, 0xf0, 0x57, 0x6b, 0x51, 0x34, 0x41} \
  }

typedef struct _EFI_SMM_CPU_IO_INTERFACE EFI_SMM_CPU_IO_INTERFACE;

/**
  Provides the basic memory and I/O interfaces used to abstract accesses to devices.

  The I/O operations are carried out exactly as requested.  The caller is
  responsible for any alignment and I/O width issues that the bus, device,
  platform, or type of I/O might require.

  @param[in]      This     The EFI_SMM_CPU_IO_INTERFACE instance.
  @param[in]      Width    Signifies the width of the I/O operations.
  @param[in]      Address  The base address of the I/O operations.  The caller is
                           responsible for aligning the Address, if required.
  @param[in]      Count    The number of I/O operations to perform.
  @param[in,out]  Buffer   For read operations, the destination buffer to store
                           the results.  For write operations, the source buffer
                           from which to write data.

  @retval EFI_SUCCESS            The data was read from or written to the device.
  @retval EFI_UNSUPPORTED        The Address is not valid for this system.
  @retval EFI_INVALID_PARAMETER  Width or Count, or both, were invalid.
  @retval EFI_OUT_OF_RESOURCES   The request could not be completed due to a lack
                                 of resources.
**/
typedef
EFI_STATUS
(EFIAPI *EFI_SMM_CPU_IO)(
  IN     EFI_SMM_CPU_IO_INTERFACE       *This,
  IN     EFI_SMM_IO_WIDTH               Width,
  IN     UINT64                         Address,
  IN     UINTN                          Count,
  IN OUT VOID                           *Buffer
  );

typedef struct {
  ///
  /// This service provides the various modalities of memory and I/O read.
  ///
  EFI_SMM_CPU_IO  Read;
  ///
  /// This service provides the various modalities of memory and I/O write.
  ///
  EFI_SMM_CPU_IO  Write;
} EFI_SMM_IO_ACCESS;

///
/// SMM CPU I/O Protocol provides CPU I/O and memory access within SMM.
///
struct _EFI_SMM_CPU_IO_INTERFACE {
  ///
  /// Allows reads and writes to memory-mapped I/O space.
  ///
  EFI_SMM_IO_ACCESS Mem;
  ///
  /// Allows reads and writes to I/O space.
  ///
  EFI_SMM_IO_ACCESS Io;
};

extern EFI_GUID gEfiSmmCpuIoGuid;

#endif