text:
/***********************************************************************************/
/*  options.h - the global variables for the program                               */
/*  Copyright (C) 1998-2003 Brian Masney <masneyb@gftp.org>                        */
/*                                                                                */
/*  Permission is hereby granted, free of charge, to any person obtaining a copy   */
/*  of this software and associated documentation files (the "Software"), to deal  */
/*  in the Software without restriction, including without limitation the rights   */
/*  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell      */
/*  copies of the Software, and to permit persons to whom the Software is          */
/*  furnished to do so, subject to the following conditions:                       */
/*                                                                                */
/*  The above copyright notice and this permission notice shall be included in all */
/*  copies or substantial portions of the Software.                                */
/*                                                                                */
/*  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR     */
/*  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,       */
/*  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE    */
/*  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER         */
/*  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,  */
/*  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE  */
/*  SOFTWARE.                                                                      */
/***********************************************************************************/

#include "gftp.h"

typedef /*@null@*/ char *gftp_sort_columns_tag;
static gftp_sort_columns_tag gftp_sort_columns[] = { N_("none"), N_("file"),
                                                     N_("size"), N_("user"),
                                                     N_("group"),
                                                     N_("datetime"),
                                                     N_("attribs"), NULL };

typedef /*@null@*/ char *gftp_sort_direction_tag;
static gftp_sort_direction_tag gftp_sort_direction[] = { N_("descending"),
                                                         N_("ascending"),
                                                         NULL };

static float gftp_maxkbs = 0.0;

char * gftp_ip_version[] = { "", "ipv4", "ipv6", NULL };

gftp_config_vars gftp_global_config_vars[] =
{
  {"", N_("General"), gftp_option_type_notebook, NULL, NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK, NULL, GFTP_PORT_GTK, NULL},

  {"view_program", N_("View program:"), gftp_option_type_text, "", NULL, 0,
   N_("The default program used to view files. If this is blank, the internal file viewer will be used"),
   GFTP_PORT_GTK, NULL},
  {"edit_program", N_("Edit program:"), gftp_option_type_text, "", NULL, 0,
   N_("The default program used to edit files."), GFTP_PORT_GTK, NULL},
  {"max_log_window_size", N_("Max Log Window Size:"),
   gftp_option_type_int, 0, NULL, 0,
   N_("The maximum size of the log window in bytes for the GTK+ port"),
   GFTP_PORT_GTK, NULL},
  {"remote_charsets", N_("Remote Character Sets:"),
   gftp_option_type_text, "", NULL, GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("This is a comma separated list of charsets to try to convert the remote messages to the current locale"),
   GFTP_PORT_ALL, NULL},
  {"remote_lc_time", N_("Remote LC_TIME:"),
   gftp_option_type_text, "", NULL, GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("This is the value of LC_TIME for the remote site. This is so that dates can be parsed properly in the directory listings."),
   GFTP_PORT_ALL, NULL},
  {"cache_ttl", N_("Cache TTL:"),
   gftp_option_type_int, GINT_TO_POINTER(3600), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("The number of seconds to keep cache entries before they expire."),
   GFTP_PORT_ALL, NULL},

  {"append_transfers", N_("Append file transfers"),
  gftp_option_type_checkbox, GINT_TO_POINTER(1), NULL, 0,
   N_("Append new file transfers onto existing ones"), GFTP_PORT_GTK, NULL},

  {"colored_msgs_gtk", N_("Colored messages in log window"),
  gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL, 0,
   N_("May not look good in some themes"), GFTP_PORT_GTK, NULL},

  {"one_transfer", N_("Do one transfer at a time"),
   gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL, 0,
   N_("Do only one transfer at a time?"), GFTP_PORT_GTK, NULL},
  {"overwrite_default", N_("Overwrite by Default"),
   gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("Overwrite files by default or set to resume file transfers"),
   GFTP_PORT_GTK, NULL},
  {"preserve_permissions", N_("Preserve file permissions"),
   gftp_option_type_checkbox, GINT_TO_POINTER(1), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("Preserve file permissions of transferred files"), GFTP_PORT_ALL,
   NULL},
  {"preserve_time", N_("Preserve file time"),
   gftp_option_type_checkbox, GINT_TO_POINTER(1), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("Preserve file times of transferred files"), GFTP_PORT_ALL,
   NULL},
  {"refresh_files", N_("Refresh after each file transfer"),
   gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("Refresh the listbox after each file is transferred"), GFTP_PORT_GTK,
   NULL},
  {"sort_dirs_first", N_("Sort directories first"),
   gftp_option_type_checkbox, GINT_TO_POINTER(1), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("Put the directories first then the files"), GFTP_PORT_ALL, NULL},
  {"show_hidden_files", N_("Show hidden files"),
   gftp_option_type_checkbox, GINT_TO_POINTER(1), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("Show hidden files in the listboxes"), GFTP_PORT_ALL, NULL},
  {"show_trans_in_title", N_("Show transfer status in title"),
   gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL, 0,
   N_("Show the file transfer status in the titlebar"), GFTP_PORT_GTK, NULL},
  {"start_transfers", N_("Start file transfers"),
   gftp_option_type_checkbox, GINT_TO_POINTER(1), NULL, 0,
   N_("Automatically start the file transfers when they get queued"),
   GFTP_PORT_GTK, NULL},
  {"cmd_in_gui", N_("Allow manual commands in GUI"),
   gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL, 0,
   N_("Allow entering manual commands in the GUI (functions like the text port)"),
   GFTP_PORT_GTK, NULL},
  {"remember_last_directory", N_("Remember last directory"),
   gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL, 0,
   N_("Save the last local and remote directory when the application is closed"),
   GFTP_PORT_GTK, NULL},
  {"connect_to_remote_on_startup", N_("Connect to remote server on startup"),
   gftp_option_type_checkbox, GINT_TO_POINTER(0), NULL, 0,
   N_("Automatically connect to the remote server when the application is started."),
   GFTP_PORT_GTK, NULL},

  {"", N_("Network"), gftp_option_type_notebook, NULL, NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK, NULL, GFTP_PORT_GTK, NULL},
  {"network_timeout", N_("Network timeout:"),
   gftp_option_type_int, GINT_TO_POINTER(60), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("The timeout waiting for network input/output. This is NOT an idle timeout."),
   GFTP_PORT_ALL, NULL},
  {"retries", N_("Connect retries:"),
   gftp_option_type_int, GINT_TO_POINTER(3), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("The number of auto-retries to do. Set this to 0 to retry indefinitely"),
   GFTP_PORT_ALL, NULL},
  {"sleep_time", N_("Retry sleep time:"),
   gftp_option_type_int, GINT_TO_POINTER(30), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("The number of seconds to wait between retries"), GFTP_PORT_ALL, NULL},
  {"maxkbs", N_("Max KB/S:"),
   gftp_option_type_float, &gftp_maxkbs, NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("The maximum KB/s a file transfer can get. (Set to 0 to disable)"),
   GFTP_PORT_ALL, NULL},
  {"trans_blksize", N_("Transfer Block Size:"),
   gftp_option_type_int, GINT_TO_POINTER(20480), NULL,
   GFTP_CVARS_FLAGS_SHOW_BOOKMARK,
   N_("The block size that is used when transferring files. This should be a multiple of 1024."),
   GFTP_PORT_ALL, NULL},

  {"default_protocol", N_("Default Protocol:"),
   gftp_option_type_textcombo, "FTP", NULL, 0,
   N_("This specifies the default protocol to use"), GFTP_PORT_ALL, NULL},

  {"ip_version", N_("IP version:"),
   gftp_option_type_textcombo, "", gftp_ip_version, 0,
   N_("IP version to use. (ipv4/ipv6 or leave empty to use whatever is available)"), GFTP_PORT_ALL, NULL},

  {"list_dblclk_action", "",
   gftp_option_type_int, GINT_TO_POINTER(0), NULL, 0,
   N_("This defines what will happen when you double click a file in the file listboxes. 0=View file 1=Edit file 2=Transfer file"), 0, NULL},
  {"listbox_local_width", "",
   gftp_option_type_int, GINT_TO_POINTER(302), NULL, 0,
   N_("The default width of the local files listbox"), 0, NULL},
  {"listbox_remote_width", "",
   gftp_option_type_int, GINT_TO_POINTER(302), NULL, 0,
   N_("The default width of the remote files listbox"), 0, NULL},
  {"listbox_file_height", "",
   gftp_option_type_int, GINT_TO_POINTER(265), NULL, 0,
   N_("The default height of the local/remote files listboxes"), 0, NULL},
  {"transfer_height", "",
   gftp_option_type_int, GINT_TO_POINTER(80), NULL, 0,
   N_("The default height of the transfer listbox"), 0, NULL},
  {"log_height", "",
   gftp_option_type_int, GINT_TO_POINTER(105), NULL, 0,
   N_("The default height of the logging window"), 0, NULL},
  {"file_trans_column", "",
   gftp_option_type_int, GINT_TO_POINTER(100), NULL, 0,
   N_("The width of the filename column in the transfer window. Set this to 0 to have this column automagically resize."), 0, NULL},

  {"host_value", "", gftp_option_type_text, "", NULL, 0, NULL, 0, NULL},
  {"port_value", "", gftp_option_type_text, "", NULL, 0, NULL, 0, NULL},
  {"user_value", "", gftp_option_type_text, "", NULL, 0, NULL, 0, NULL},

  {"local_startup_directory", "", gftp_option_type_text, "", NULL, 0, NULL,
   0, NULL},
  {"remote_startup_directory", "", gftp_option_type_text, "", NULL, 0, NULL,
   0, NULL},

  {"local_sortcol", "",
   gftp_option_type_intcombo, GINT_TO_POINTER(1), gftp_sort_columns, 0,
   N_("The default column to sort by"), GFTP_PORT_TEXT, NULL},
  {"local_sortasds", "",
   gftp_option_type_intcombo, GINT_TO_POINTER(1), gftp_sort_direction, 0,
   N_("Sort ascending or descending"), GFTP_PORT_TEXT, NULL},
  {"remote_sortcol", "",
   gftp_option_type_intcombo, GINT_TO_POINTER(1), gftp_sort_columns, 0,
   N_("The default column to sort by"), GFTP_PORT_TEXT, NULL},
  {"remote_sortasds", "",
   gftp_option_type_intcombo, GINT_TO_POINTER(1), gftp_sort_direction, 0,
   N_("Sort ascending or descending"), GFTP_PORT_TEXT, NULL},

  {"local_file_width", "",
   gftp_option_type_int, GINT_TO_POINTER(0), NULL, 0,
   N_("The width of the filename column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"local_size_width", "",
   gftp_option_type_int, GINT_TO_POINTER(85), NULL, 0,
   N_("The width of the size column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"local_user_width", "",
   gftp_option_type_int, GINT_TO_POINTER(75), NULL, 0,
   N_("The width of the user column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"local_group_width", "",
   gftp_option_type_int, GINT_TO_POINTER(76), NULL, 0,
   N_("The width of the group column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"local_date_width", "",
   gftp_option_type_int, GINT_TO_POINTER(120), NULL, 0,
   N_("The width of the date column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"local_attribs_width", "",
   gftp_option_type_int, GINT_TO_POINTER(75), NULL, 0,
   N_("The width of the attribs column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"remote_file_width", "",
   gftp_option_type_int, GINT_TO_POINTER(0), NULL, 0,
   N_("The width of the filename column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"remote_size_width", "",
   gftp_option_type_int, GINT_TO_POINTER(85), NULL, 0,
   N_("The width of the size column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"remote_user_width", "",
   gftp_option_type_int, GINT_TO_POINTER(75), NULL, 0,
   N_("The width of the user column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"remote_group_width", "",
   gftp_option_type_int, GINT_TO_POINTER(76), NULL, 0,
   N_("The width of the group column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"remote_date_width", "",
   gftp_option_type_int, GINT_TO_POINTER(120), NULL, 0,
   N_("The width of the date column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"remote_attribs_width", "",
   gftp_option_type_int, GINT_TO_POINTER(75), NULL, 0,
   N_("The width of the attribs column in the file listboxes. Set this to 0 to have this column automagically resize. Set this to -1 to disable this column"), 0, NULL},
  {"send_color", "",
   gftp_option_type_color, "0:8600:0", NULL, 0,
   N_("The color of the commands that are sent to the server"), 0, NULL},
  {"recv_color", "",
   gftp_option_type_color, "0:0:ffff", NULL, 0,
   N_("The color of the commands that are received from the server"), 0, NULL},
  {"error_color", "",
   gftp_option_type_color, "ffff:0:0", NULL, 0,
   N_("The color of the error messages"), 0, NULL},
  {"misc_color", "",
   gftp_option_type_color, "a000:8d00:4600", NULL, 0,
   N_("The color of the rest of the log messages"), 0, NULL},
  {NULL, NULL, 0, NULL, NULL, 0, NULL, 0, NULL}
};

supported_gftp_protocols gftp_protocols[] =
{
  // name    init        register options    url_prefix dport shown use_threads
  { "FTP",   ftp_init,    ftp_register_module,    "ftp",   21,  1, 1 },
  { "FTPS",  ftps_init,   ftps_register_module,   "ftps",  21,  1, 1 },
  { "FTPSi", ftpsi_init,  ftpsi_register_module,  "ftpsi", 990, 1, 1 },

  { "LocalFS", localfs_init, localfs_register_module, "file", 0, 1, 0 },

  { "SSH2", sshv2_init, sshv2_register_module, "ssh2", 22, 1, 1},

  { "Bookmark", bookmark_init, bookmark_register_module, "bookmark", 0, 0, 0}, /* hidden */
  { "FSP", fsp_init, fsp_register_module, "fsp", 21, 1, 1},

  /* limited support - CLI download only, no dir listing */
  { "HTTP",  http_init,  http_register_module,  "http",   80, 0, 1 }, /* hidden */
  { "HTTPS", https_init, https_register_module, "https", 443, 0, 1 }, /* hidden */

  { NULL, NULL, NULL, NULL, 0, 0, 0 }
};

GHashTable * gftp_global_options_htable = NULL,
           * gftp_config_list_htable = NULL,
           * gftp_bookmarks_htable = NULL;

char gftp_version[] = "gFTP " VERSION;

GList * gftp_file_transfers = NULL,
      * gftp_file_transfer_logs = NULL,
      * gftp_options_list = NULL;

gftp_bookmarks_var * gftp_bookmarks = NULL;

/*@null@*/ FILE * gftp_logfd = NULL;

int gftp_configuration_changed = 0;


text:
from __future__ import division, print_function, unicode_literals

# This code is so you can run the samples without installing the package
import sys
import os
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..'))
#

testinfo = "s, q"
tags = "Canvas, line_to"

import cocos
from cocos.director import director
from cocos import draw
import pyglet

import random
ri = random.randint

class TestFigure(draw.Canvas):
    def render(self):
        x,y = director.get_window_size()

        for i in range(100):
            start = ri(0,640), ri(0,480)
            end = ri(0,640), ri(0,480)
            color = ri(00,255),ri(00,255),ri(00,255),ri(00,255)
            width = ri(1,20)
            if (random.random() < 0.3) :
                self.set_color( color )
                self.set_stroke_width( width )
                self.move_to( start )
            self.line_to( end  )

class TestLayer(cocos.layer.Layer):
    def __init__(self):
        super( TestLayer, self ).__init__()

        self.add( TestFigure() )
        self.schedule( lambda x: 0 )

def main():
    director.init()
    test_layer = TestLayer ()
    main_scene = cocos.scene.Scene (test_layer)
    director.run (main_scene)

if __name__ == '__main__':
    main()

redpajama_set_name: RedPajamaGithub


text:
/**
 * Created by plter on 7/26/16.
 */

import Display from "cn/ucai/game2d/display/Display";

class Rectangle extends Display {

    constructor(width, height, color) {
        super();

        this._width = width;
        this._height = height;
        this._color = color;
    }

    /**
     *
     * @param {CanvasRenderingContext2D} context2d
     */
    onDraw(context2d) {
        context2d.fillStyle = this._color;
        context2d.fillRect(0, 0, this._width, this._height);
    }

    hitTestPoint(globalX, globalY) {
        return globalX > this.getGlobalX() &&
            globalY > this.getGlobalY() &&
            globalX < this.getGlobalX() + this._width &&
            globalY < this.getGlobalY() + this._height;
    }
}

export default Rectangle;


text:
<html>
  <head>
    <title>Hello Conekta Python Flask - Successfully Subscribed to the '{{plan_name}}'!</title>
  </head>
  <body>
    Congrats! You have been successfully subscribed to the '{{plan_name}}', your customer id is {{customer_id}}.
  </body>
</html>


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

<ph:ProfileHandlerGroup xmlns:ph="urn:mace:shibboleth:2.0:idp:profile-handler" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xsi:schemaLocation="urn:mace:shibboleth:2.0:idp:profile-handler classpath:/schema/shibboleth-2.0-idp-profile-handler.xsd">

    <!-- Error Handler -->
    <ph:ErrorHandler xsi:type="ph:JSPErrorHandler" jspPagePath="/error.jsp"/>

    <!-- Profile Handlers -->
    <!--
        All profile handlers defined below are accessed via the Servlet path "/profile" so if your profile
        handler's request path is "/Status" then the full path is "<servletContextName>/profile/Status"
     -->
    <ph:ProfileHandler xsi:type="ph:Status">
        <ph:RequestPath>/Status</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAMLMetadata" metadataFile="/opt/shibboleth-idp/metadata/idp-metadata.xml">
        <ph:RequestPath>/Metadata/SAML</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:ShibbolethSSO" inboundBinding="urn:mace:shibboleth:1.0:profiles:AuthnRequest"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:1.0:profiles:browser-post
                                                   urn:oasis:names:tc:SAML:1.0:profiles:artifact-01">
        <ph:RequestPath>/Shibboleth/SSO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML1AttributeQuery" inboundBinding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding">
        <ph:RequestPath>/SAML1/SOAP/AttributeQuery</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML1ArtifactResolution" inboundBinding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding">
        <ph:RequestPath>/SAML1/SOAP/ArtifactResolution</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SSO" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact">
        <ph:RequestPath>/SAML2/POST/SSO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SSO" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact">
        <ph:RequestPath>/SAML2/POST-SimpleSign/SSO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SSO" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact">
        <ph:RequestPath>/SAML2/Redirect/SSO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SSO" inboundBinding="urn:mace:shibboleth:2.0:profiles:AuthnRequest"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact">
        <ph:RequestPath>/SAML2/Unsolicited/SSO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2ECP" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:SOAP">
        <ph:RequestPath>/SAML2/SOAP/ECP</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SLO" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact">
        <ph:RequestPath>/SAML2/Redirect/SLO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SLO" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact">
        <ph:RequestPath>/SAML2/POST/SLO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SLO" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
                                                   urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact">
        <ph:RequestPath>/SAML2/POST-SimpleSign/SLO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SLO" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:SOAP">
        <ph:RequestPath>/SAML2/SOAP/SLO</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2SLO" inboundBinding="urn:mace:shibboleth:2.0:profiles:LocalLogout">
        <ph:RequestPath>/Logout</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2AttributeQuery" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:SOAP">
        <ph:RequestPath>/SAML2/SOAP/AttributeQuery</ph:RequestPath>
    </ph:ProfileHandler>

    <ph:ProfileHandler xsi:type="ph:SAML2ArtifactResolution" inboundBinding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP"
                       outboundBindingEnumeration="urn:oasis:names:tc:SAML:2.0:bindings:SOAP">
        <ph:RequestPath>/SAML2/SOAP/ArtifactResolution</ph:RequestPath>
    </ph:ProfileHandler>

    <!-- Login Handlers -->
<!--
    <ph:LoginHandler xsi:type="ph:RemoteUser">
        <ph:AuthenticationMethod>urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified</ph:AuthenticationMethod>
    </ph:LoginHandler>
-->
    <!-- Login handler that delegates the act of authentication to an external system. -->
    <!-- This login handler and the RemoteUser login handler will be merged in the next major release. -->
    <!--
    <ph:LoginHandler xsi:type="ph:ExternalAuthn">
        <ph:AuthenticationMethod>urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified</ph:AuthenticationMethod>
        <ph:QueryParam name="foo" value="bar" />
    </ph:LoginHandler>
    -->

    <!--  Username/password login handler -->
    <ph:LoginHandler xsi:type="ph:UsernamePassword"
                  jaasConfigurationLocation="file:///opt/shibboleth-idp/conf/login.config">
        <ph:AuthenticationMethod>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</ph:AuthenticationMethod>
    </ph:LoginHandler>

    <!--
        Removal of this login handler will disable SSO support, that is it will require the user to authenticate
        on every request.
    -->
    <ph:LoginHandler xsi:type="ph:PreviousSession">
        <ph:AuthenticationMethod>urn:oasis:names:tc:SAML:2.0:ac:classes:PreviousSession</ph:AuthenticationMethod>
    </ph:LoginHandler>

</ph:ProfileHandlerGroup>


text:
"use strict";

function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }

require('./DataModelManager.less');

var React = require('react');

var API = React.createClass({
  displayName: "API",
  getInitialState: function getInitialState() {
    return {
      data: null
    };
  },
  __renderArgvForm: function __renderArgvForm() {
    var _this = this;

    if (this.props.method) {
      var _items = [],
          _argv = this.props.argv || {};

      for (var key in _argv) {
        _items.push({
          title: key,
          name: key,
          type: 'Input',
          required: true,
          value: _argv[key]
        });
      }

      if (_items.length) {
        return /*#__PURE__*/React.createElement(zn.react.Group, {
          title: "\u8BF7\u6C42\u53C2\u6570"
        }, /*#__PURE__*/React.createElement(zn.react.Form, {
          items: _items,
          buttons: [{
            text: '发送请求',
            type: 'submit',
            status: 'primary'
          }],
          onSubmitBefore: this.__onFormSubmitBefore
        }));
      } else {
        return /*#__PURE__*/React.createElement(zn.react.Button, {
          onClick: function onClick() {
            return _this.__submit();
          },
          "float": "right",
          text: "\u53D1\u9001\u8BF7\u6C42"
        });
      }
    } else {
      return null;
    }
  },
  __renderData: function __renderData() {
    if (this.state.data) {
      return /*#__PURE__*/React.createElement(zn.react.Group, {
        title: "\u8FD4\u56DE\u7ED3\u679C"
      }, /*#__PURE__*/React.createElement("code", {
        style: {
          padding: 5
        }
      }, JSON.stringify(this.state.data)));
    } else {
      return null;
    }
  },
  __onFormSubmitBefore: function __onFormSubmitBefore(data) {
    return this.__submit(data), false;
  },
  __submit: function __submit(data) {
    zn.confirm('对【' + this.props.router + '】发起请求?', '提示', function () {
      var _method = this.props.method.split('/')[0].toLowerCase();

      zn.preloader.open({
        content: '正在请求中...'
      });

      zn.http[_method](this.props.router, data || {}).then(function (data) {
        if (data.status == 200) {
          this.setState({
            data: data
          });
        } else {
          zn.notification.error(data.result);
        }

        zn.preloader.close();
      }.bind(this), function () {
        zn.notification.error('提交失败');
        zn.preloader.close();
      });
    }.bind(this));
  },
  render: function render() {
    var _this2 = this;

    return /*#__PURE__*/React.createElement("li", {
      className: "api"
    }, /*#__PURE__*/React.createElement("div", {
      className: "info"
    }, /*#__PURE__*/React.createElement("div", {
      className: "i-header"
    }, this.props.method && /*#__PURE__*/React.createElement("span", {
      className: "method"
    }, this.props.method), /*#__PURE__*/React.createElement("span", null, this.props.router), /*#__PURE__*/React.createElement("i", {
      "data-tooltip": "\u590D\u5236\u94FE\u63A5",
      onClick: function onClick() {
        return zn.react.copyToClipboard(_this2.props.router);
      },
      className: "fa fa-clipboard zr-padding-3"
    })), /*#__PURE__*/React.createElement("div", {
      className: "i-body"
    }, this.__renderArgvForm(), this.__renderData())));
  }
});
module.exports = React.createClass({
  displayName: "exports",
  getInitialState: function getInitialState() {
    return {
      apps: [],
      apis: [],
      app: null,
      toolbarItems: [{
        text: '更新代码',
        name: 'update.code',
        icon: 'fa-cloud-download',
        style: {
          marginRight: 5
        }
      }, {
        text: '重启',
        name: 'restart',
        status: 'danger',
        icon: 'fa-play-circle',
        style: {
          marginRight: 5
        }
      }]
    };
  },
  componentDidMount: function componentDidMount() {
    this.__loadApps();
  },
  __loadApps: function __loadApps() {
    zn.http.get('/$/apps').then(function (data) {
      if (data.status == 200) {
        this.setState({
          apps: data.result
        });
      } else {
        zn.notification.error(data.result);
      }
    }.bind(this));
  },
  __onAppClick: function __onAppClick(app) {
    zn.preloader.open({
      content: '正在加载中...'
    });
    zn.http.get('/' + app + '/apis').then(function (data) {
      if (data.status == 200) {
        this.setState({
          app: app,
          apis: data.result
        });
      } else {
        zn.notification.error(data.result);
      }

      zn.preloader.close();
    }.bind(this), function () {
      zn.notification.error('服务器请求失败');
      zn.preloader.close();
    });
  },
  __renderApps: function __renderApps() {
    return /*#__PURE__*/React.createElement("ul", {
      className: "apps"
    }, this.state.apps.map(function (app, index) {
      var _this3 = this;

      return /*#__PURE__*/React.createElement("li", {
        key: index,
        className: "app " + (this.state.app == app ? 'curr' : ''),
        onClick: function onClick() {
          return _this3.__onAppClick(app);
        }
      }, /*#__PURE__*/React.createElement("a", null, app));
    }.bind(this)));
  },
  __renderApis: function __renderApis() {
    return /*#__PURE__*/React.createElement("ul", {
      className: "apis"
    }, this.state.apis.map(function (api, index) {
      return /*#__PURE__*/React.createElement(API, _extends({
        key: index
      }, api));
    }.bind(this)));
  },
  __onToolbarClick: function __onToolbarClick(item) {
    switch (item.name) {
      case 'update.code':
        zn.confirm('更新后台服务代码?', '提示', function () {
          zn.preloader.open({
            content: '正在更新中...'
          });
          zn.http.get('/$/pull').then(function (data) {
            if (data.status == 200) {
              zn.notification.success('更新完成');
            } else {
              zn.notification.error(data.result);
            }

            zn.preloader.close();
          }.bind(this), function () {
            zn.notification.error('更新失败');
            zn.preloader.close();
          });
        }.bind(this));
        break;

      case 'restart':
        zn.confirm('重启后台服务?', '提示', function () {
          zn.preloader.open({
            content: '正在请求中...'
          });
          zn.http.get('/$/redeploy').then(function (data) {
            if (data.status == 200) {
              zn.notification.success('重启完成');
            } else {
              zn.notification.error(data.result);
            }

            zn.preloader.close();
          }.bind(this), function () {
            zn.notification.error('重启失败');
            zn.preloader.close();
          });
        }.bind(this));
        break;
    }
  },
  render: function render() {
    return /*#__PURE__*/React.createElement(zn.react.Page, {
      className: "zn-plugin-admin-devtool-server-manager",
      title: "\u670D\u52A1\u5668API\u7BA1\u7406",
      toolbarItems: this.state.toolbarItems,
      onToolbarClick: this.__onToolbarClick
    }, /*#__PURE__*/React.createElement("div", {
      className: "zr-flex-layout zn-plugin-admin-master-slave-flex-layout row"
    }, /*#__PURE__*/React.createElement("div", {
      className: "layout-header",
      style: {
        minWidth: 200
      }
    }, this.__renderApps()), /*#__PURE__*/React.createElement("div", {
      className: "layout-body"
    }, this.__renderApis())));
  }
});


text:
@interface ADTokenCache (Internal)
- (BOOL)addOrUpdateItem:(ADTokenCacheItem *)item
                  error:(ADAuthenticationError * __autoreleasing *)error;
@end

@implementation ADTestAppDelegate

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    [self showAcquireToken:nil];
}

- (IBAction)showAcquireToken:(id)sender
{
    [ADTestAppAcquireTokenWindowController showWindow];
}

- (IBAction)showConsoleLog:(id)sender
{

}

- (IBAction)showCacheViewer:(id)sender
{
    [ADTestAppCacheWindowController showWindow];
}

- (IBAction)loadCacheFromFile:(id)sender
{

}

- (IBAction)writeCacheToFile:(id)sender
{

}

@end


text:
var fs = require('fs');
var path = require('path');
var commander = require('commander');
var Mocha = require('mocha');

var specspath = path.join(__dirname, 'tests');
var specs = fs.readdirSync(specspath).filter(function(spec) {
  return /\.js$/.test(spec);
});

var options = commander
  .usage('[options]')
  .option('-r, --reporter <name>', 'mocha reporter [default: spec]', 'spec')
  .option('-t, --timeout <ms>', 'test-case timeout in milliseconds [default: 20000]', 20000)
  .parse(process.argv);

var mocha = new Mocha({
  ui       : "bdd",
  reporter : options.reporter,
  timeout  : options.timeout,
});

specs.forEach(function (name) {
  mocha.addFile(path.join(specspath, name));
});

mocha.run(function (failedCount) {
  var exitCode = (failedCount > 0) ? 1: 0;
  process.exit(exitCode);
});


text:
Integrated High-throughput Sequencing Data Analysis of Plant Transcriptome
Author: Dr. Chenjiang You
Current Version: 0.3
Latest updata: 11/09/2017
- - - -
### Introduction

The **_pRNASeqTools_** is a _Perl_ and _R_ based pipeline designed for automatic general analysis for _Illumina_ RNA-seq data in supported plants.
Currently it is able to process small RNA-seq, mRNA-seq, degradome-seq and generally analyze them. See below for more information in specific tasks.
The phasiRNA identification module was contributed by [Dr. Xuan Ma](mailto:xuanma@genetics.ac.cn). If you have any questions or comments, please submit an issue in the GitHub or directly email to [Chenjiang You](mailto:chenjiang.you@ucr.edu).
- - - -
### Before the first run

To successfully run this pipeline on your own computer, several pieces of dependent software are needed:

1. _cutadapt_
	Martin M. Cutadapt removes adapter sequences from high-throughput sequencing reads. **_EMBnet. journal_**, 2011, 17(1): pp. 10-12.
2. _ShortStack_ v3.x developed by Michael Axtell @PSU
	Johnson N R, Yeoh J M, Coruh C, _et al_. Improved Placement of Multi-Mapping Small RNAs. **_G3: Genes| Genomes| Genetics_**, 2016: g3. 116.030452.
3. _samtools_ v1.x
	Li H, Handsaker B, Wysoker A, _et al_. The sequence alignment map format and SAMtools. **_Bioinformatics_**, 2009, 25(16): 2078-2079.
4. _R_ and _R_ packages _DESeq2_, _NMF_ and _pheatmap_
	R Core Team (2016). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. URL https://www.R-project.org
	Love M I, Huber W, Anders S. Moderated estimation of fold change and dispersion for RNA-seq data with DESeq2. **_Genome biology_**, 2014, 15(12): 1-21.
	Raivo Kolde (2015). pheatmap: Pretty Heatmaps. R package version 1.0.8. https://CRAN.R-project.org/package=pheatmap
  *Note: Please use the branch `devel` of _NMF_ which is compatible with the new internal grid of R.*
5. _bedtools_
	Quinlan A R, Hall I M. BEDTools: a flexible suite of utilities for comparing genomic features. **_Bioinformatics_**, 2010, 26(6): 841-842.
6. _bowtie_ and _bowtie2_
	Langmead B, Trapnell C, Pop M, _et al._ Ultrafast and memory-efficient alignment of short DNA sequences to the human genome. **_Genome biology_**, 2009, 10(3): R25.
	Langmead B, Salzberg S L. Fast gapped-read alignment with Bowtie 2. **_Nature methods_**, 2012, 9(4): 357-359.
7. _STAR_
	Dobin A1, Davis CA, Schlesinger F, _et al._ STAR: ultrafast universal RNA-seq aligner. **_Bioinformatics_**, 2013, 29(1): 15-21.
8. _CLIPper_
  Lovci MT, Ghanem D, Marr H, _et al._ Rbfox proteins regulate alternative mRNA splicing through evolutionarily conserved RNA bridges. **_Nature structural & molecular biology_**. 2013;20(12): 1434-1442.

To easily run this pipeline, add the path of the executive file into your `$PATH`, _eg._

	echo "export PATH=_path_to_RNASeqTools_:$PATH" >> ~/.bashrc
	source ~/.bashrc
- - - -
### Input files preparation

The only input files needed are _illumina_ output fastq files, either in the FASTQ format or corresponding compressed file formats `.gz` and `.bz2`. SRR accessions are also accepted.
**Note: the FASTA format is not supported. You may convert the fasta format to fastq format by adding artificial qualities.**
- - - -
### Running pRNASeqTools

#### Usage and Options

See examples and help information of `pRNASeqTools`.

### Examples

General analysis for small RNA-seq from samples `control` and `treatment` with 3 biological replicates

```
pRNASeqTools srna --adaptor AGATCGGAAGAGC --control control=control_1.fastq.gz+control_2.fastq.gz+control_3.fastq.gz --treatment treatment=treatment_1.fastq.bz2+treatment_2.fastq.bz2+treatment_3.fastq.bz2
```

Perform statistic analyses using preprocessed data

```
pRNASeqTools srna --control control=3 --treatment treatment=3
```

Only mapping the small RNA reads to the genome and creating read count files

```
pRNASeqTools srna --adaptor AGATCGGAAGAGC --mapping-only --control control=control_1.fastq+control_2.fastq+control_3.fastq
```

General analysis for mRNA-seq from samples `control` and `treatment` with 3 biological replicates

```
pRNASeqTools mrna --control control=control_1.fastq.gz+control_2.fastq.gz+control_3.fastq.gz --treatment treatment=treatment_1.fastq.bz2+treatment_2.fastq.bz2+treatment_3.fastq.bz2
```

General analysis for paired mRNA-seq from samples `control` and `treatment` with 3 biological replicates

```
pRNASeqTools mrna --control control=control_1_R1.fastq.gz,control_1_R2.fastq.gz+control_2_R1.fastq.gz,control_2_R2.fastq.gz+control_3_R1.fastq.gz,control_3_R2.fastq.gz --treatment treatment=treatment_1.fastq.bz2+treatment_2.fastq.bz2+treatment_3.fastq.bz2
```

Trunction and tailing analysis of plant miRNA

```
pRNASeqTools tt --adaptor AGATCGGAAGAGC --control control=control_1.fastq.gz+control_2.fastq.gz+control_3.fastq.gz --treatment treatment=treatment_1.fastq.bz2+treatment_2.fastq.bz2+treatment_3.fastq.bz2
```

Degradome data analysis

```
pRNASeqTools deg --adaptor AGATCGGAAGAGC --control control=control_1.fastq.gz+control_2.fastq.gz+control_3.fastq.gz --treatment treatment=treatment_1.fastq.bz2+treatment_2.fastq.bz2+treatment_3.fastq.bz2
```
- - - -
### Output

All output files are stored in the output directory.
Mapping statistics are stored in `log.txt`.

#### sRNA analysis

Several groups of files are generated in the output directory:

1. `count` files and `nf` files are for later `--nomapping` runs, which will not invoke the mapping procedures.
2. `pdf` files showing the reproductivity of biological replicates and the relationship of samples.
3. `csv` files containing the results of statistic analyses, of which `hyper` and `hypo` files indicate the significant ones filtered out based on input parameters.
4. `bedgraph` files for visualization in IGV.
5. `phasi` files for phasiRNA analysis.
**Note: Keywords are also embedded in the file names, indicating the targets and methods.**

#### mRNA analysis

1. Mapped reads in `bam` files and read counts for each gene in `txt` files are reported.
2. Up-regulated and down-regulated DEG results are reported in `total.hyper.csv` and `total.hypo.csv` files.
*Note: `post` files are still experimental, please ignore them.*

#### Trunction and tailing analysis

1. miRNA reads are categorized in the `txt` files.
2. `pdf` files are bubble plots for each miRNA.

#### Degradome data analysis

1. `bam` files contain the mapped reads.
2. `txt` files report the identified peaks on each transcripts.

#### CLIP-seq analysis


text:
<?php

$classies = array('sortable');
if (!$data['Plugin']['status']) {
	$classies[] = 'disablerow';
}
$class = ' class="' . implode(' ', $classies) . '"';
?>

<tr<?php echo $class; ?>>

		<?php if ($sortmode): ?>
			<?php $this->BcBaser->img('admin/sort.png', array('alt' => '並び替え', 'class' => 'sort-handle')) ?>
			<?php echo $this->BcForm->input('Sort.id' . $data['Plugin']['id'], array('type' => 'hidden', 'class' => 'id', 'value' => $data['Plugin']['id'])) ?>
		<?php endif ?>
		<?php if ($this->BcBaser->isAdminUser()): ?>
			<?php echo $this->BcForm->checkbox('ListTool.batch_targets.' . $data['Plugin']['id'], array('type' => 'checkbox', 'class' => 'batch-targets', 'value' => $data['Plugin']['id'])) ?>
		<?php endif ?>
		<?php if ($data['Plugin']['update']): ?>
			<?php $this->BcBaser->link('', array('controller' => 'updaters', 'action' => 'plugin', $data['Plugin']['name']), array('title' => 'アップデート', 'class' => 'btn-update')); ?>
		<?php endif ?>
		<?php if ($data['Plugin']['admin_link'] && $data['Plugin']['status'] && !$data['Plugin']['update'] && !$data['Plugin']['old_version']): ?>
			<?php $this->BcBaser->link('', $data['Plugin']['admin_link'], array('title' => '管理')) ?>
		<?php endif; ?>
		<?php if ($data['Plugin']['status']): ?>
			<?php $this->BcBaser->link('', array('action' => 'ajax_delete', $data['Plugin']['name']), array('title' => '無効', 'class' => 'btn-delete')) ?>
		<?php elseif (!$data['Plugin']['status'] && !$data['Plugin']['update'] && !$data['Plugin']['old_version']): ?>
			<?php $this->BcBaser->link('', array('action' => 'install', $data['Plugin']['name']), array('title' => 'インストール')) ?>
		<?php endif ?>
		<?php if (!$data['Plugin']['status']): ?>
			<?php if (!in_array($data['Plugin']['name'], $corePlugins)): ?>
				<?php $this->BcBaser->link($this->BcBaser->getImg('admin/icn_tool_delete.png', array('width' => 24, 'height' => 24, 'alt' => '削除', 'class' => 'btn')), array('action' => 'ajax_delete_file', $data['Plugin']['name']), array('title' => '削除', 'class' => 'btn-delfile')); ?>
			<?php endif ?>
		<?php endif; ?>

		<?php if ($data['Plugin']['old_version']): ?>

新しいバージョンにアップデートしてください

		<?php elseif ($data['Plugin']['update']): ?>

アップデートを完了させてください

		<?php endif ?>
		<?php echo $data['Plugin']['name'] ?><?php if ($data['Plugin']['title']): ?>(<?php echo $data['Plugin']['title'] ?>)<?php endif ?>

	<?php echo $data['Plugin']['version'] ?>
	<?php echo $data['Plugin']['description'] ?>
	<?php $this->BcBaser->link($data['Plugin']['author'], $data['Plugin']['url'], array('target' => '_blank')) ?>

		<?php echo $this->BcTime->format('Y-m-d', $data['Plugin']['created']) ?>

		<?php echo $this->BcTime->format('Y-m-d', $data['Plugin']['modified']) ?>


text:
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

using System.Threading.Tasks;
using Microsoft.CodeAnalysis.Test.Utilities;
using Roslyn.Test.Utilities;
using Xunit;

namespace Microsoft.CodeAnalysis.Editor.CSharp.UnitTests.Recommendations
{
    [Trait(Traits.Feature, Traits.Features.KeywordRecommending)]
    public class OperatorKeywordRecommenderTests : KeywordRecommenderTests
    {
        [Fact]
        public async Task TestNotAtRoot_Interactive()
        {
            await VerifyAbsenceAsync(SourceCodeKind.Script,
@"$$");
        }

        [Fact]
        public async Task TestNotAfterClass_Interactive()
        {
            await VerifyAbsenceAsync(SourceCodeKind.Script,
@"class C { }
$$");
        }

        [Fact]
        public async Task TestNotAfterGlobalStatement_Interactive()
        {
            await VerifyAbsenceAsync(SourceCodeKind.Script,
@"System.Console.WriteLine();
$$");
        }

        [Fact]
        public async Task TestNotAfterGlobalVariableDeclaration_Interactive()
        {
            await VerifyAbsenceAsync(SourceCodeKind.Script,
@"int i = 0;
$$");
        }

        [Fact]
        public async Task TestNotInUsingAlias()
        {
            await VerifyAbsenceAsync(
@"using Goo = $$");
        }

        [Fact]
        public async Task TestNotInGlobalUsingAlias()
        {
            await VerifyAbsenceAsync(
@"global using Goo = $$");
        }

        [Fact]
        public async Task TestNotInEmptyStatement()
        {
            await VerifyAbsenceAsync(AddInsideMethod(
@"$$"));
        }

        [Fact]
        public async Task TestAfterImplicit()
        {
            await VerifyKeywordAsync(
@"class Goo {
    public static implicit $$");
        }

        [Fact]
        public async Task TestAfterExplicit()
        {
            await VerifyKeywordAsync(
@"class Goo {
    public static explicit $$");
        }

        [Fact]
        public async Task TestNotAfterType()
        {
            await VerifyAbsenceAsync(
@"class Goo {
    int $$");
        }

        [Fact, WorkItem(542271, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/542271")]
        public async Task TestAfterPublicStaticType()
        {
            await VerifyAbsenceAsync(
@"class Goo {
    public static int $$");
        }

        [Fact, WorkItem(542271, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/542271")]
        public async Task TestAfterPublicStaticExternType()
        {
            await VerifyAbsenceAsync(
@"class Goo {
    public static extern int $$");
        }

        [Fact, WorkItem(542271, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/542271")]
        public async Task TestAfterGenericType()
        {
            await VerifyAbsenceAsync(
@"class Goo {
    public static IList<int> $$");
        }

        [Fact]
        public async Task TestNotInInterface()
        {
            await VerifyAbsenceAsync(
@"interface Goo {
    public static int $$");
        }
    }
}


text:
using System.Linq;
using System.Xml.Linq;
using CoreXml.Test.XLinq;
using Microsoft.Test.ModuleCore;

namespace XLinqTests
{
    public class FirstNode : XLinqTestCase
    {
        // On XElement
        // Empty element
        // Element with string
        // Element with text node
        // Mixed content
        //[Variation(Priority = 0, Desc = "Empty XElement", Params = new object[] { "" })]
        //[Variation(Priority = 1, Desc = "Empty XElement - II.", Params = new object[] { "" })]
        //[Variation(Priority = 0, Desc = "Empty XElement - with attribute", Params = new object[] { "" })]
        //[Variation(Priority = 1, Desc = "Empty XElement - with parent", Params = new object[] { "" })]

        #region Public Methods and Operators

        public override void AddChildren()
        {
            AddChild(new TestVariation(EmptyElement) { Attribute = new VariationAttribute("Empty XElement") { Params = new object[] { "" }, Priority = 0 } });
            AddChild(new TestVariation(EmptyElement) { Attribute = new VariationAttribute("Empty XElement - II.") { Params = new object[] { "" }, Priority = 1 } });
            AddChild(new TestVariation(EmptyElement) { Attribute = new VariationAttribute("Empty XElement - with attribute") { Params = new object[] { "" }, Priority = 0 } });
            AddChild(new TestVariation(EmptyElement) { Attribute = new VariationAttribute("Empty XElement - with parent") { Params = new object[] { "" }, Priority = 1 } });
            AddChild(new TestVariation(elementWithText) { Attribute = new VariationAttribute("XElement - string content [whitespace]") { Params = new object[] { " ", " " }, Priority = 1 } });
            AddChild(new TestVariation(elementWithText) { Attribute = new VariationAttribute("XElement - string content") { Params = new object[] { "text", "text" }, Priority = 0 } });
            AddChild(new TestVariation(elementWithText) { Attribute = new VariationAttribute("XElement - string content [cdata]") { Params = new object[] { "<![CDATA[cdata]]>", "cdata" }, Priority = 1 } });
            AddChild(new TestVariation(ElementOtherTypes) { Attribute = new VariationAttribute("XElement - mixed content") { Priority = 1 } });
            AddChild(new TestVariation(DocumentOtherTypes) { Attribute = new VariationAttribute("XDocument - mixed content - with decl") { Param = true, Priority = 1 } });
            AddChild(new TestVariation(DocumentOtherTypes) { Attribute = new VariationAttribute("XDocument - mixed content - no decl") { Param = false, Priority = 1 } });
        }

        public void DocumentOtherTypes()
        {
            object[] nodeset = { " ", new XProcessingInstruction("pi", "data"), new XProcessingInstruction("pi2", "data2"), new XComment("comm"), new XDocumentType("root", null, null, null), new XElement("single"), new XElement("complex", new XElement("a1"), new XElement("a2")) };

            XDocument doc = ((bool)Variation.Param) ? new XDocument(new XDeclaration("1.0", null, null)) : new XDocument();

            int pos = ((bool)Param) ? 0 : nodeset.Length - 1;

            foreach (var combination in nodeset.PositionCombinations(pos))
            {
                if (combination.Select(c => new ExpectedValue(false, c)).IsXDocValid())
                {
                    continue;
                }
                doc.Add(combination);
                XNode ret = ((bool)Param) ? doc.FirstNode : doc.LastNode;

                if (combination[pos] is string)
                {
                    TestLog.Compare(ret is XText, "text node");
                    TestLog.Compare((ret as XText).Value, combination[pos], "text node value");
                }
                else
                {
                    TestLog.Compare(ret.Equals(combination[pos]), "Node not OK");
                }
                doc.RemoveNodes();
            }
        }

        public void ElementOtherTypes()
        {
            object[] nodeset = { "text", new XProcessingInstruction("pi", "data"), new XComment("comm"), new XElement("single"), new XElement("complex", new XElement("a1"), new XElement("a2")) };

            XElement e = XElement.Parse("");
            int pos = ((bool)Param) ? 0 : nodeset.Length - 1;

            foreach (var combination in nodeset.PositionCombinations(pos))
            {
                e.Add(combination);
                XNode ret = ((bool)Param) ? e.FirstNode : e.LastNode;

                if (combination[pos] is string)
                {
                    TestLog.Compare(ret is XText, "text node");
                    TestLog.Compare((ret as XText).Value, combination[pos], "text node value");
                }
                else
                {
                    TestLog.Compare(ret.Equals(combination[pos]), "Node not OK");
                }
                e.RemoveAll();
            }
        }

        public void EmptyElement()
        {
            var xml = Variation.Params[0] as string;
            XElement e = XElement.Parse(xml, LoadOptions.PreserveWhitespace);
            e = e.DescendantsAndSelf("A").First();
            XNode ret = ((bool)Param) ? e.FirstNode : e.LastNode;
            TestLog.Compare(ret == null, "Node != null");
        }

        //[Variation(Priority = 0, Desc = "XElement - string content", Params = new object[] { "text", "text" })]
        //[Variation(Priority = 1, Desc = "XElement - string content [cdata]", Params = new object[] { "<![CDATA[cdata]]>", "cdata" })]
        //[Variation(Priority = 1, Desc = "XElement - string content [whitespace]", Params = new object[] { " ", " " })]
        public void elementWithText()
        {
            var xml = Variation.Params[0] as string;
            var expValue = Variation.Params[1] as string;

            XElement e = XElement.Parse(xml, LoadOptions.PreserveWhitespace);
            e = e.DescendantsAndSelf("A").First();

            XNode ret = ((bool)Param) ? e.FirstNode : e.LastNode;

            TestLog.Compare(ret is XText, "Node is XText");
            TestLog.Compare((ret as XText).Value, expValue, "Node expeted value");
            TestLog.Compare(ret.Parent.Equals(e), "Node.Parent");

            TestLog.Compare(ret.NextNode == null, "nextnode == null");
            TestLog.Compare(ret.PreviousNode == null, "Previousnode == null");
        }
        #endregion

        //[Variation(Priority = 1, Desc = "XElement - mixed content")]
        // Type is CoreXml.Test.XLinq.FunctionalTests+TreeManipulationTests+FirstNode
        // Test Case
    }
}


text:
import React, { PropTypes } from 'react';

const FeedEntryHeader = ({ url, title }) => (

      {title}

);

FeedEntryHeader.propTypes = {
  url: PropTypes.string.isRequired,
  title: PropTypes.string.isRequired
};

export default FeedEntryHeader;