text:
.member_box {
    color: #000;
    height: 48px; width: 200px;
}

.member_box img {
    margin-right: 0.5em;
}

.member_box a i {
    color: #666;
}

.member_box a:hover {
    text-decoration: none;
    color: #000;
}

/**
 * ermöglicht transparente Teile eines Progressbars
 */
.bar-transparent{
    background: none !important;
    box-shadow: none !important;
    -moz-box-shadow: none !important;
    color: #7f7f7f !important;
    font-weight: normal !important;
    text-shadow: none !important;
}

/**
 * am rechten Rand eines Bars einen dunklen Trennrand.
 */
.bar-border-right{
    border-right: 2px solid black !important;
    padding-right: -1px;
    padding-left: -1px;
}

/*
Sticky Footer by Ryan Fait
http://ryanfait.com/
*/
* {
    margin: 0;
}
html, body {
    height: 100%;
}
.wrapper {
    min-height: 100%;
    height: auto !important;
    height: 100%;
    margin: 0 auto -3em; /* the bottom margin is the negative value of the footer's height */
}
.footer, .push {
    padding: 0px;
    height: 3em; /* .push must be the same height as .footer */
}

.push {
    height: 6em;
}

.footer {
    background-color: #f5f5f5;
}


text:
using System;
using System.Text.Json;
using System.Threading;
using System.Threading.Tasks;
using Azure;
using Azure.Core;
using Azure.Core.Pipeline;
using Azure.ResourceManager.Network.Models;

namespace Azure.ResourceManager.Network
{
    /// <summary> Creates or updates a virtual network gateway in the specified resource group. </summary>
    public partial class VirtualNetworkGatewaysCreateOrUpdateOperation : Operation<VirtualNetworkGateway>, IOperationSource<VirtualNetworkGateway>
    {
        private readonly ArmOperationHelpers<VirtualNetworkGateway> _operation;

        /// <summary> Initializes a new instance of VirtualNetworkGatewaysCreateOrUpdateOperation for mocking. </summary>
        protected VirtualNetworkGatewaysCreateOrUpdateOperation()
        {
        }

        internal VirtualNetworkGatewaysCreateOrUpdateOperation(ClientDiagnostics clientDiagnostics, HttpPipeline pipeline, Request request, Response response)
        {
            _operation = new ArmOperationHelpers<VirtualNetworkGateway>(this, clientDiagnostics, pipeline, request, response, OperationFinalStateVia.AzureAsyncOperation, "VirtualNetworkGatewaysCreateOrUpdateOperation");
        }
        /// <inheritdoc />
        public override string Id => _operation.Id;

        /// <inheritdoc />
        public override VirtualNetworkGateway Value => _operation.Value;

        /// <inheritdoc />
        public override bool HasCompleted => _operation.HasCompleted;

        /// <inheritdoc />
        public override bool HasValue => _operation.HasValue;

        /// <inheritdoc />
        public override Response GetRawResponse() => _operation.GetRawResponse();

        /// <inheritdoc />
        public override Response UpdateStatus(CancellationToken cancellationToken = default) => _operation.UpdateStatus(cancellationToken);

        /// <inheritdoc />
        public override ValueTask<Response> UpdateStatusAsync(CancellationToken cancellationToken = default) => _operation.UpdateStatusAsync(cancellationToken);

        /// <inheritdoc />
        public override ValueTask<Response<VirtualNetworkGateway>> WaitForCompletionAsync(CancellationToken cancellationToken = default) => _operation.WaitForCompletionAsync(cancellationToken);

        /// <inheritdoc />
        public override ValueTask<Response<VirtualNetworkGateway>> WaitForCompletionAsync(TimeSpan pollingInterval, CancellationToken cancellationToken = default) => _operation.WaitForCompletionAsync(pollingInterval, cancellationToken);

        VirtualNetworkGateway IOperationSource<VirtualNetworkGateway>.CreateResult(Response response, CancellationToken cancellationToken)
        {
            using var document = JsonDocument.Parse(response.ContentStream);
            return VirtualNetworkGateway.DeserializeVirtualNetworkGateway(document.RootElement);
        }

        async ValueTask<VirtualNetworkGateway> IOperationSource<VirtualNetworkGateway>.CreateResultAsync(Response response, CancellationToken cancellationToken)
        {
            using var document = await JsonDocument.ParseAsync(response.ContentStream, default, cancellationToken).ConfigureAwait(false);
            return VirtualNetworkGateway.DeserializeVirtualNetworkGateway(document.RootElement);
        }
    }
}

redpajama_set_name: RedPajamaGithub


text:
package com.sylva.sylvabbsclient.dao;

import android.database.sqlite.SQLiteDatabase;

import java.util.Map;

import de.greenrobot.dao.AbstractDao;
import de.greenrobot.dao.AbstractDaoSession;
import de.greenrobot.dao.identityscope.IdentityScopeType;
import de.greenrobot.dao.internal.DaoConfig;

import com.sylva.sylvabbsclient.bean.User;
import com.sylva.sylvabbsclient.bean.Topic;
import com.sylva.sylvabbsclient.bean.Post;
import com.sylva.sylvabbsclient.bean.Reply;

import com.sylva.sylvabbsclient.dao.UserDao;
import com.sylva.sylvabbsclient.dao.TopicDao;
import com.sylva.sylvabbsclient.dao.PostDao;
import com.sylva.sylvabbsclient.dao.ReplyDao;

// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.

/**
 * {@inheritDoc}
 *
 * @see de.greenrobot.dao.AbstractDaoSession
 */
public class DaoSession extends AbstractDaoSession {

    private final DaoConfig userDaoConfig;
    private final DaoConfig topicDaoConfig;
    private final DaoConfig postDaoConfig;
    private final DaoConfig replyDaoConfig;

    private final UserDao userDao;
    private final TopicDao topicDao;
    private final PostDao postDao;
    private final ReplyDao replyDao;

    public DaoSession(SQLiteDatabase db, IdentityScopeType type, Map<Class<? extends AbstractDao<?, ?>>, DaoConfig>
            daoConfigMap) {
        super(db);

        userDaoConfig = daoConfigMap.get(UserDao.class).clone();
        userDaoConfig.initIdentityScope(type);

        topicDaoConfig = daoConfigMap.get(TopicDao.class).clone();
        topicDaoConfig.initIdentityScope(type);

        postDaoConfig = daoConfigMap.get(PostDao.class).clone();
        postDaoConfig.initIdentityScope(type);

        replyDaoConfig = daoConfigMap.get(ReplyDao.class).clone();
        replyDaoConfig.initIdentityScope(type);

        userDao = new UserDao(userDaoConfig, this);
        topicDao = new TopicDao(topicDaoConfig, this);
        postDao = new PostDao(postDaoConfig, this);
        replyDao = new ReplyDao(replyDaoConfig, this);

        registerDao(User.class, userDao);
        registerDao(Topic.class, topicDao);
        registerDao(Post.class, postDao);
        registerDao(Reply.class, replyDao);
    }

    public void clear() {
        userDaoConfig.getIdentityScope().clear();
        topicDaoConfig.getIdentityScope().clear();
        postDaoConfig.getIdentityScope().clear();
        replyDaoConfig.getIdentityScope().clear();
    }

    public UserDao getUserDao() {
        return userDao;
    }

    public TopicDao getTopicDao() {
        return topicDao;
    }

    public PostDao getPostDao() {
        return postDao;
    }

    public ReplyDao getReplyDao() {
        return replyDao;
    }

}


text:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- From: file:/D:/workooad/Move2/Move-and-Move-Alarm/MAMTv1/app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.1/res/values-ja/values-ja.xml -->
    <eat-comment/>
    <string msgid="4600421777120114993" name="abc_action_bar_home_description">"ホームへ移動"</string>
    <string msgid="1397052879051804371" name="abc_action_bar_home_description_format">"%1$s、%2$s"</string>
    <string msgid="6623331958280229229" name="abc_action_bar_home_subtitle_description_format">"%1$s、%2$s、%3$s"</string>
    <string msgid="1594238315039666878" name="abc_action_bar_up_description">"上へ移動"</string>
    <string msgid="3588849162933574182" name="abc_action_menu_overflow_description">"その他のオプション"</string>
    <string msgid="4076576682505996667" name="abc_action_mode_done">"完了"</string>
    <string msgid="7468859129482906941" name="abc_activity_chooser_view_see_all">"すべて表示"</string>
    <string msgid="2031811694353399454" name="abc_activitychooserview_choose_application">"アプリの選択"</string>
    <string msgid="7723749260725869598" name="abc_search_hint">"検索…"</string>
    <string msgid="3691816814315814921" name="abc_searchview_description_clear">"検索キーワードを削除"</string>
    <string msgid="2550479030709304392" name="abc_searchview_description_query">"検索キーワード"</string>
    <string msgid="8264924765203268293" name="abc_searchview_description_search">"検索"</string>
    <string msgid="8928215447528550784" name="abc_searchview_description_submit">"検索キーワードを送信"</string>
    <string msgid="893419373245838918" name="abc_searchview_description_voice">"音声検索"</string>
    <string msgid="3421042268587513524" name="abc_shareactionprovider_share_with">"共有"</string>
    <string msgid="7165123711973476752" name="abc_shareactionprovider_share_with_application">"%sと共有"</string>
    <string msgid="1603543279005712093" name="abc_toolbar_collapse_description">"折りたたむ"</string>
    <!-- From: file:/D:/workooad/Move2/Move-and-Move-Alarm/MAMTv1/app/build/intermediates/exploded-aar/com.facebook.android/facebook-android-sdk/4.6.0/res/values-ja/values-ja.xml -->
    <eat-comment/>
    <string name="com_facebook_image_download_unknown_error">画像のダウンロード中に予期しないエラーが発生しました。</string>
    <string name="com_facebook_internet_permission_error_message">WebViewログインにはINTERNET権限が必要です</string>
    <string name="com_facebook_internet_permission_error_title">AndroidManifestエラー</string>
    <string name="com_facebook_like_button_liked">いいね!済み</string>
    <string name="com_facebook_like_button_not_liked">いいね!</string>
    <string name="com_facebook_loading">読み込み中...</string>
    <string name="com_facebook_loginview_cancel_action">キャンセル</string>
    <string name="com_facebook_loginview_log_in_button">ログイン</string>
    <string name="com_facebook_loginview_log_in_button_long">Facebookでログイン</string>
    <string name="com_facebook_loginview_log_out_action">ログアウト</string>
    <string name="com_facebook_loginview_log_out_button">ログアウト</string>
    <string name="com_facebook_loginview_logged_in_as">次のユーザーとしてログイン中: %1$s</string>
    <string name="com_facebook_loginview_logged_in_using_facebook">Facebookを使用してログイン中</string>
    <string name="com_facebook_send_button_text">送信</string>
    <string name="com_facebook_share_button_text">シェア</string>
    <string name="com_facebook_tooltip_default">新機能!アプリと共有する情報をコントロールできます。</string>
    <string name="messenger_send_button_text">送信</string>
    <!-- From: file:/D:/workooad/Move2/Move-and-Move-Alarm/MAMTv1/app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.1/res/values-ja/values-ja.xml -->
    <eat-comment/>
    <string msgid="2869576371154716097" name="status_bar_notification_info_overflow">"999+"</string>
</resources>


text:
package com.indignado.logicbricks.core.sensors;

import com.indignado.logicbricks.core.data.LogicBrick;

/**
 * @author Rubentxu
 */
public abstract class Sensor extends LogicBrick {

    // config Values
    public float frequency = 0;
    public boolean invert = false;
    public boolean tap = false;
    public int pulse = Pulse.PM_IDLE.value;

    // values
    public float tick = 0;
    public boolean positive = false;
    public boolean firstExec = true;
    public boolean initialized = false;
    public TapMode firstTap = TapMode.TAP_IN;
    public TapMode lastTap = TapMode.TAP_OUT;

    @Override
    public void reset() {
        super.reset();
        frequency = 0;
        invert = false;
        tap = false;
        pulse = Pulse.PM_IDLE.value;
        tick = 0;
        positive = false;
        firstExec = true;
        initialized = false;
        firstTap = TapMode.TAP_IN;
        lastTap = TapMode.TAP_OUT;

    }

    public enum Pulse {
        PM_IDLE,
        PM_TRUE,
        PM_FALSE;

        private int value;

        Pulse() {
            this.value = 1 << ordinal();

        }

        public static boolean isPositivePulseMode(Sensor sensor) {
            return (sensor.pulse & Pulse.PM_TRUE.value) != 0;

        }

        public static boolean isNegativePulseMode(Sensor sensor) {
            return (sensor.pulse & Pulse.PM_FALSE.value) != 0;

        }

        public int getValue() {
            return value;

        }

    }

    public enum TapMode {
        TAP_OUT,
        TAP_IN
    }

}


text:
.playground {
  display: flex;
  width: 100%;
}
.playgroundCode, .playgroundPreview {
  position: relative;
  flex: 1;
  overflow: scroll;
}

/*.playgroundPreview {
  display: flex;
  align-items: center;
  justify-content: center;
}*/


text:
package sn.analytics.query;

import org.apache.spark.api.java.function.Function;
import org.apache.spark.sql.api.java.Row;

import java.io.Serializable;

/**
 * Created by Sumanth on 26/01/15.
 */
public class RowToCSV implements Function<Row, String>,Serializable {
    @Override
    public String call(Row row) throws Exception {
        StringBuilder sb = new StringBuilder();
        for(int i=0;i <row.length();i++){
            sb.append(row.get(i)).append(",");
        }
        return sb.toString();
    }
}


text:
<?php

class Foo {
	public function method()
	{
	}

	private $foo;

	const FOO = 0;

	public static $staticFoo = FOO;
}


text:
"use strict";
var assert = require("power-assert");
var sinon = require("sinon");
var xhr = require("../src/sequence/promise-reduce-xhr");
describe("promise-reduce-chain", function () {
    beforeEach(function () {
        var lock = true;
        sinon.stub(xhr.request, "comment", function () {
            return new Promise(function (resolve) {
                setTimeout(function () {
                    lock = false;
                    resolve(1);
                }, 50);
            });
        });
        sinon.stub(xhr.request, "people", function () {
            return new Promise(function (resolve, reject) {
                if (!lock) {
                    resolve(2);
                } else {
                    reject(new Error("promise is locked"))
                }
            });
        });
    });
    afterEach(function (done) {
        xhr.request.comment.restore();
        xhr.request.people.restore();
        done();
    });
    it("should passing result of request callback", function () {
        return shouldFulfilled(xhr.main()).then(function (value) {
            assert.deepEqual(value, [1, 2]);
        })
    });

});


text:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <title>Local File API</title>
    <link href="css/bootstrap.min.css" rel="stylesheet" />

Local File API

File List

                Select one or more files:
                <input type="file" multiple id="files" />

                <button ng-click="ctrl.showDetails()">Show Details</button>

                        Name:{{detail.name}}
                        Size:{{detail.size}}
                        Type:{{detail.type}}
                        Last Mod Date:{{detail.lastModifiedDate}}

File

                Choose single file:
                <input type="file" id="file" />

                <button ng-click="ctrl.showContent()">Show Content</button>

                Content: {{ctrl.content}}


text:
class Jlab12

// Student Name : 		Daniel Hayden
// Student Id Number : 	C00137009
// Date :				19/09/14
// Purpose : 			Enter the following values : distance travelled in miles, the amount of time spent on the trip in hours and the
//                      amount of gallons of petrol used. The program should then display , the average miles per hour and the miles per gallon.

{
    public static void main(String[] args)
	{

	    double distance;
		double time;
		double gallons;

		double averageMPH;
		double averageMPG;

		System.out.print("Enter the distance traveled (Miles) ->  ");
		distance = EasyIn.getDouble();
		System.out.print("Enter the time spent traveling (Hours) ->  ");
		time = EasyIn.getDouble();
		System.out.print("Enter the amount of petrol used (Gallons) ->  ");
		gallons = EasyIn.getDouble();

		averageMPH = distance / time;
	    averageMPG = distance / gallons;

	    System.out.println("Your average miles per hour traveled was " + averageMPH + " MPH" );
	    System.out.println("Your car consumed " + averageMPG + " miles per gallon." );

	}
}


text:
package com.oic.vdd;

import android.app.DownloadManager;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.AlertDialog;
import android.support.v7.widget.SearchView;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import com.facebook.AccessToken;
import com.facebook.AccessTokenTracker;
import com.facebook.CallbackManager;
import com.facebook.FacebookCallback;
import com.facebook.FacebookException;
import com.facebook.FacebookSdk;
import com.facebook.Profile;
import com.facebook.ProfileTracker;
import com.facebook.appevents.AppEventsLogger;
import com.facebook.login.LoginManager;
import com.facebook.login.LoginResult;
import com.facebook.login.widget.LoginButton;
import com.oic.vdd.common.event.DownloadEvent;
import com.oic.vdd.common.event.RefreshEvent;
import com.oic.vdd.common.event.SnackEvent;
import com.oic.vdd.common.utils.ConnectionUtils;
import com.oic.vdd.common.utils.PackageUtils;
import com.oic.vdd.common.utils.ToastUtils;
import com.oic.vdd.manager.DownloadMng;
import com.oic.vdd.manager.FacebookMng;
import com.oic.vdd.manager.ParseMng;
import com.oic.vdd.manager.SharePrefMng;
import com.oic.vdd.models.User;
import com.oic.vdd.screens.develop.DevelopFragment;
import com.oic.vdd.screens.downloaded.DownloadedFragment;
import com.oic.vdd.screens.gallery.GalleryFragment;
import com.oic.vdd.screens.setting.SettingFragment;
import com.oic.vdd.screens.social.SocialFragment;
import com.oic.vdd.screens.socialgroup.SocialGroupFragment;
import com.parse.ParseAnalytics;

import java.util.Set;

import de.greenrobot.event.EventBus;
import hotchemi.android.rate.AppRate;
import rx.Subscriber;

public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {
    public static final String SCREEN_NONE = "Video Downloader";
    public static final String SCREEN_SOCIAL = "Uploaded Videos";
    public static final String SCREEN_SOCIAL_GROUP = "Videos on Facebook";
    public static final String SCREEN_GALLERY = "Videos on Device";
    public static final String SCREEN_DOWNLOADED = "Downloaded Videos";
    public static final String SCREEN_SETTING = "Setting";
    public static final String SCREEN_DEVELOP = "Develop";

    public static final int RESULT_SETTINGS = 0;

    public static final String EVENT_REFRESH = "refresh";

    String currentScreen = SCREEN_SOCIAL_GROUP;

    CallbackManager callbackManager;

    AccessTokenTracker accessTokenTracker;
    ProfileTracker profileTracker;

    FrameLayout mainContent;
    DrawerLayout drawer;
    NavigationView navigationView;
    Toolbar toolbar;

    Menu menu;
    MenuItem searchItem;
    SearchView searchView;

    SocialFragment socialFragment;
    SocialGroupFragment socialGroupFragment;
    GalleryFragment galleryFragment;
    DownloadedFragment downloadedFragment;
    SettingFragment settingFragment;
    DevelopFragment developFragment;

    ImageView avatar;
    TextView username;

    boolean isBegin = true;

    private final SearchView.OnQueryTextListener mOnQueryTextListener = new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextChange(String newText) {
            if(TextUtils.isEmpty(newText)){
                socialGroupFragment.query("");
            }
            return false;
        }
        @Override
        public boolean onQueryTextSubmit(String query) {
            socialGroupFragment.query(query);
            return false;
        }
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        FacebookSdk.sdkInitialize(getApplicationContext());

        setContentView(R.layout.activity_main);
        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        if(!EventBus.getDefault().isRegistered(this)) {
            EventBus.getDefault().register(this);
        }

        mainContent = (FrameLayout)findViewById(R.id.mainContent);

        socialFragment = new SocialFragment();
        socialGroupFragment = new SocialGroupFragment();
        galleryFragment = new GalleryFragment();
        downloadedFragment = new DownloadedFragment();
        settingFragment = new SettingFragment();
        developFragment = new DevelopFragment();
        getSupportFragmentManager().beginTransaction().add(R.id.mainContent, socialFragment).commitAllowingStateLoss();
        getSupportFragmentManager().beginTransaction().add(R.id.mainContent,socialGroupFragment).commitAllowingStateLoss();
        getSupportFragmentManager().beginTransaction().add(R.id.mainContent, galleryFragment).commitAllowingStateLoss();
        getSupportFragmentManager().beginTransaction().add(R.id.mainContent, downloadedFragment).commitAllowingStateLoss();
        getSupportFragmentManager().beginTransaction().add(R.id.mainContent, settingFragment).commitAllowingStateLoss();
        getSupportFragmentManager().beginTransaction().add(R.id.mainContent, developFragment).commitAllowingStateLoss();

        drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
                this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
        drawer.setDrawerListener(toggle);
        toggle.syncState();

        navigationView = (NavigationView) findViewById(R.id.nav_view);
        navigationView.setNavigationItemSelectedListener(this);
        View headerLayout = navigationView.getHeaderView(0);
        LoginButton authButton = (LoginButton)headerLayout.findViewById(R.id.login_button);
        authButton.setReadPermissions(FacebookMng.PERMISSION);
        avatar = (ImageView)headerLayout.findViewById(R.id.avatar);
        username = (TextView)headerLayout.findViewById(R.id.username);

        callbackManager = CallbackManager.Factory.create();

        LoginManager.getInstance().registerCallback(callbackManager,
                new FacebookCallback<LoginResult>() {
                    @Override
                    public void onSuccess(LoginResult loginResult) {
                        // App code
                        String accessToken = loginResult.getAccessToken().getToken();
                        Set<String> perm = loginResult.getAccessToken().getPermissions();
                        SharePrefMng.getInstance(MainActivity.this).setValue(SharePrefMng.KEY_ACCESSTOKEN, accessToken);
                        SharePrefMng.getInstance(MainActivity.this).setValue(SharePrefMng.KEY_PERMISSION, perm);

                        Log.e("TAG", "accessToken:" + AccessToken.getCurrentAccessToken().getToken());
                        Log.e("TAG", "permission:" + AccessToken.getCurrentAccessToken().getPermissions().toString());
                        Log.e("TAG", "user_id:" + FacebookMng.getInstance(MainActivity.this).getUserId());

                        EventBus.getDefault().post(loginResult);

                        refresh();

                        drawer.closeDrawer(GravityCompat.START);
                    }

                    @Override
                    public void onCancel() {
                        // App code
                    }

                    @Override
                    public void onError(FacebookException exception) {
                        // App code
                    }

                });

        accessTokenTracker = new AccessTokenTracker() {
            @Override
            protected void onCurrentAccessTokenChanged(AccessToken oldAccessToken, AccessToken currentAccessToken) {
                Log.d("TAG", "onCurrentAccessTokenChanged()");
                if (oldAccessToken == null) {
                    // Log in Logic
                } else if (currentAccessToken == null) {
                    // Log out logic
                    EventBus.getDefault().post(new RefreshEvent());
                }
            }
        };

        profileTracker = new ProfileTracker() {
            @Override
            protected void onCurrentProfileChanged(Profile oldProfile, Profile currentProfile) {
                // App code
            }
        };

        ParseAnalytics.trackAppOpenedInBackground(getIntent());

        // show hash key
        PackageUtils.showHashKey(getApplicationContext(), null);

        checkNetwork();
    }

    private void checkNetwork(){
        if(!ConnectionUtils.isOnline(this)){
            AlertDialog alertDialog = new AlertDialog.Builder(this).create();

            alertDialog.setTitle("Info");
            alertDialog.setMessage("Internet not available, Cross check your internet connectivity and try again");
            alertDialog.setIcon(android.R.drawable.ic_dialog_alert);
            alertDialog.setButton(DialogInterface.BUTTON_NEUTRAL, "OK", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                    changeScreen(SCREEN_GALLERY);
                }
            });

            alertDialog.show();
        }
    }

    private void refresh(){
        FacebookMng.getInstance(MainActivity.this).getUserName().subscribe(new Subscriber<String>() {
            @Override
            public void onCompleted() {

            }

            @Override
            public void onError(Throwable e) {

            }

            @Override
            public void onNext(String name) {
                username.setText(name);
                SharePrefMng.getInstance(MainActivity.this).setValue(SharePrefMng.KEY_USER_NAME, name + "");

                User user = new User();
                user.fbId = FacebookMng.getInstance(getApplicationContext()).getUserId();
                user.name = name;
                user.accessToken = FacebookMng.getInstance(getApplicationContext()).getAccessToken();
                user.email = "";
                user.password = "";
                user.permission = FacebookMng.getInstance(getApplicationContext()).getPermission().toString();

                ParseMng.getInstance(getApplicationContext()).postUser(user);
            }
        });
        new Thread(new Runnable() {
            @Override
            public void run() {
                final Bitmap bmp = FacebookMng.getInstance(MainActivity.this).getPhotoFacebook();
                avatar.post(new Runnable() {
                    @Override
                    public void run() {
                        avatar.setImageBitmap(bmp);
                    }
                });
            }
        }).start();
    }

    public void changeScreen(String type){
        currentScreen = type;
        FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();

        fragmentTransaction.hide(socialFragment);
        fragmentTransaction.hide(socialGroupFragment);
        fragmentTransaction.hide(galleryFragment);
        fragmentTransaction.hide(downloadedFragment);
        fragmentTransaction.hide(settingFragment);
        fragmentTransaction.hide(developFragment);

        switch (type){
            case SCREEN_SOCIAL:
                fragmentTransaction.show(socialFragment);
                navigationView.setCheckedItem(R.id.nav_social);
                setSearchMenuVisibility(false);
                break;
            case SCREEN_SOCIAL_GROUP:
                fragmentTransaction.show(socialGroupFragment);
                navigationView.setCheckedItem(R.id.nav_social_group);
                setSearchMenuVisibility(true);
                break;
            case SCREEN_GALLERY:
                fragmentTransaction.show(galleryFragment);
                navigationView.setCheckedItem(R.id.nav_gallery);
                setSearchMenuVisibility(false);
                break;
            case SCREEN_DOWNLOADED:
                fragmentTransaction.show(downloadedFragment);
                navigationView.setCheckedItem(R.id.nav_downloaded);
                setSearchMenuVisibility(false);
                break;
            case SCREEN_SETTING:
                fragmentTransaction.show(settingFragment);
                navigationView.setCheckedItem(R.id.nav_setting);
                setSearchMenuVisibility(false);
                break;
            case SCREEN_DEVELOP:
                fragmentTransaction.show(developFragment);
                navigationView.setCheckedItem(R.id.nav_develop);
                setSearchMenuVisibility(false);
                break;
            case SCREEN_NONE:
                break;
        }
        fragmentTransaction.commitAllowingStateLoss();

        toolbar.setTitle(type);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        callbackManager.onActivityResult(requestCode, resultCode, data);
    }

    @Override
    protected void onResume() {
        super.onResume();
        AppEventsLogger.activateApp(this);
        // check login
        // should not be called in onCreate because fragments is not attached
        if(FacebookMng.getInstance(this).isLoggedin()){
            refresh();
        }

        if(isBegin) {
            currentScreen = SharePrefMng.getInstance(this).getValue(SharePrefMng.KEY_LASTSCREEN,SCREEN_SOCIAL_GROUP);

            if(currentScreen.equalsIgnoreCase(SCREEN_SETTING)){
                currentScreen = SCREEN_SOCIAL_GROUP;
            }

            changeScreen(currentScreen);
            isBegin = false;
            EventBus.getDefault().post(new RefreshEvent());
        }

        if(SharePrefMng.getInstance(this).getValue(SharePrefMng.KEY_FIRST_TIME_USE,true) || !FacebookMng.getInstance(this).isLoggedin()){
            SharePrefMng.getInstance(this).setValue(SharePrefMng.KEY_FIRST_TIME_USE,false);
            drawer.openDrawer(GravityCompat.START);
        }

        if(Config.MODE == Config.BUILD_MODE.PRODUCT){
            navigationView.getMenu().removeGroup(R.id.nav_group_develop);
        }
    }

    @Override
    protected void onPause() {
        super.onPause();
        // Logs 'app deactivate' App Event.
        AppEventsLogger.deactivateApp(this);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        accessTokenTracker.stopTracking();
        profileTracker.stopTracking();
        EventBus.getDefault().unregister(this);
        SharePrefMng.getInstance(this).setValue(SharePrefMng.KEY_LASTSCREEN, currentScreen);
    }

    @Override
    public void onBackPressed() {
        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        if (drawer.isDrawerOpen(GravityCompat.START)) {
            drawer.closeDrawer(GravityCompat.START);
        } else {
            super.onBackPressed();
        }
    }

    @Override
    public boolean onCreateOptionsMenu(final Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);

        this.menu = menu;
        searchItem = menu.findItem(R.id.action_search);
        searchView = (android.support.v7.widget.SearchView) searchItem.getActionView();

        searchView.setOnQueryTextListener(mOnQueryTextListener);
        setSearchMenuVisibility(false);
        return true;
    }

    private void setSearchMenuVisibility(boolean visible) {
        if(searchItem!=null) {
            searchItem.setVisible(visible);
        }
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();

        return super.onOptionsItemSelected(item);
    }

    @SuppressWarnings("StatementWithEmptyBody")
    @Override
    public boolean onNavigationItemSelected(MenuItem item) {
        // Handle navigation view item clicks here.
        int id = item.getItemId();

        if (id == R.id.nav_social) {
            changeScreen(SCREEN_SOCIAL);
        } else if (id == R.id.nav_gallery) {
            changeScreen(SCREEN_GALLERY);
        } else if (id == R.id.nav_social_group) {
            changeScreen(SCREEN_SOCIAL_GROUP);
        } else if (id == R.id.nav_downloaded) {
            changeScreen(SCREEN_DOWNLOADED);
        } else if (id == R.id.nav_setting) {
            changeScreen(SCREEN_SETTING);
        } else if (id == R.id.nav_develop) {
            changeScreen(SCREEN_DEVELOP);
        } else if (id == R.id.nav_share) {
            shareApp();
        } else if (id == R.id.nav_rate) {
            AppRate.with(this).showRateDialog(this);
        }

        drawer.closeDrawer(GravityCompat.START);
        return true;
    }

    public void shareApp(){
        Intent intent = new Intent();
        intent.setAction(Intent.ACTION_SEND);

        intent.setType("text/plain");
        intent.putExtra(Intent.EXTRA_TEXT, getString(R.string.share_link));
        startActivity(Intent.createChooser(intent, "Share"));
    }

    public void onEvent(SnackEvent event){
        ToastUtils.showSnack(event.text);
    }

    public void onEvent(DownloadEvent event){
        String message = event.message;
        int status = DownloadMng.getInstance(this).getStatus(event.downloadId);
        switch (status){
            case DownloadManager.STATUS_RUNNING:
                message = "downloading "+event.video.toString();
                break;
            case DownloadManager.STATUS_FAILED:
                message = "download "+event.video.toString()+" failed";
                break;
            case DownloadManager.STATUS_SUCCESSFUL:
                message = "download "+event.video.toString()+" successful";
                break;
        }
        if(TextUtils.isEmpty(message)){
            return;
        }
        Toast.makeText(this,message,Toast.LENGTH_LONG).show();
    }
}


text:
package com.withinet.opaas.controller;

import java.util.List;

import org.springframework.web.bind.annotation.RestController;

import com.withinet.opaas.controller.common.BundleControllerException;
import com.withinet.opaas.model.domain.Bundle;

/**
 * @author Folarin
 *
 */
@RestController
public interface BundleController {

	public Bundle createBundle (Bundle bundle, Long requesterId) throws BundleControllerException;

	public boolean deleteBundle (Long id, Long requesterId) throws BundleControllerException;

	public Bundle readBundle (Long id, Long requesterId) throws BundleControllerException;

	public Bundle readBundleByName (String name, Long requesterId) throws BundleControllerException;

	public List<Bundle> listBundlesByOwner (Long id, Long requesterId) throws BundleControllerException;

	public List<Bundle> listBundlesByProject (Long id, Long requesterId) throws BundleControllerException;

	public Bundle updateBundle(Bundle bundle, Long requesterId)
			throws BundleControllerException;

	public void refreshBundleInstances(Long id, Long requesterId)
			throws BundleControllerException;

}


text:
@ECHO off
CALL SteamVR_SetDriverVars.bat

ECHO "Listing registered SteamVR drivers..."
"%STEAMVR_RUNTIME_DIR%\bin\win64\vrpathreg" show

ECHO "Done"
PAUSE


text:
Actuator

this.playervalue = 0

var this.random = Actuator


text:
class Event < ActiveRecord::Base
  belongs_to :created_by, :class_name => "User"
  has_many :invites
  has_many :guests, :through => :invites

  def to_s
    id
  end

  def self.upcoming_events
    self.where("date > ?", DateTime.now)
  end

  def self.past_events
    self.where("date < ?", DateTime.now)
  end

  def self.permanent_events
    self.where("date is null")
  end
end


text:
package com.alipay.euler.andfix;

import java.io.File;
import java.io.IOException;
import java.lang.reflect.Method;
import java.util.Enumeration;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

import android.content.Context;
import android.util.Log;

import com.alipay.euler.andfix.annotation.MethodReplace;
import com.alipay.euler.andfix.security.SecurityChecker;

import dalvik.system.DexFile;

/**
 * AndFix Manager
 *
 * @author sanping.li@alipay.com
 *
 */
public class AndFixManager {
	private static final String TAG = "AndFixManager";

	private static final String DIR = "apatch_opt";

	/**
	 * context
	 */
	private final Context mContext;

	/**
	 * classes will be fixed
	 */
	private static Map<String, Class<?>> mFixedClass = new ConcurrentHashMap<String, Class<?>>();

	/**
	 * whether support AndFix
	 */
	private boolean mSupport = false;

	/**
	 * security check
	 */
	private SecurityChecker mSecurityChecker;

	/**
	 * optimize directory
	 */
	private File mOptDir;

	public AndFixManager(Context context) {
	    Log.d("euler", "AndFixManager, construct");
		mContext = context;
		mSupport = Compat.isSupport();
		if (mSupport) {
			mSecurityChecker = new SecurityChecker(mContext);
			mOptDir = new File(mContext.getFilesDir(), DIR);
			if (!mOptDir.exists() && !mOptDir.mkdirs()) {// make directory fail
				mSupport = false;
				Log.e(TAG, "opt dir create error.");
			} else if (!mOptDir.isDirectory()) {// not directory
				mOptDir.delete();
				mSupport = false;
			}
		}
	}

	/**
	 * delete optimize file of patch file
	 *
	 * @param file
	 *            patch file
	 */
	public synchronized void removeOptFile(File file) {
	    Log.d("euler", "AndFixManager, removeOptFile");
		File optfile = new File(mOptDir, file.getName());
		if (optfile.exists() && !optfile.delete()) {
			Log.e(TAG, optfile.getName() + " delete error.");
		}
	}

	/**
	 * fix
	 *
	 * @param patchPath
	 *            patch path
	 */
	public synchronized void fix(String patchPath) {
	    Log.d("euler", "AndFixManager, fix");
		fix(new File(patchPath), mContext.getClassLoader(), null);
	}

	/**
	 * fix
	 *
	 * @param file
	 *            patch file
	 * @param classLoader
	 *            classloader of class that will be fixed
	 * @param classes
	 *            classes will be fixed
	 */
	public synchronized void fix(File file, ClassLoader classLoader,
			List<String> classes) {
	    Log.d("euler", "AndFixManager, fix2, file=" + file.getAbsolutePath());
		if (!mSupport) {
			return;
		}

		if (!mSecurityChecker.verifyApk(file)) {// security check fail
			return;
		}

		try {
			File optfile = new File(mOptDir, file.getName());
			boolean saveFingerprint = true;
			if (optfile.exists()) {
				// need to verify fingerprint when the optimize file exist,
				// prevent someone attack on jailbreak device with
				// Vulnerability-Parasyte.
				// btw:exaggerated android Vulnerability-Parasyte
				// http://secauo.com/Exaggerated-Android-Vulnerability-Parasyte.html
				if (mSecurityChecker.verifyOpt(optfile)) {
					saveFingerprint = false;
				} else if (!optfile.delete()) {
					return;
				}
			}

			final DexFile dexFile = DexFile.loadDex(file.getAbsolutePath(),
					optfile.getAbsolutePath(), Context.MODE_PRIVATE);

			if (saveFingerprint) {
				mSecurityChecker.saveOptSig(optfile);
			}

			ClassLoader patchClassLoader = new ClassLoader(classLoader) {
				@Override
				protected Class<?> findClass(String className)
						throws ClassNotFoundException {
					Class<?> clazz = dexFile.loadClass(className, this);
					if (clazz == null
							&& className.startsWith("com.alipay.euler.andfix")) {
						return Class.forName(className);// annotation's class
														// not found
					}
					if (clazz == null) {
						throw new ClassNotFoundException(className);
					}
					return clazz;
				}
			};
			Enumeration<String> entrys = dexFile.entries();
			Class<?> clazz = null;
			while (entrys.hasMoreElements()) {
				String entry = entrys.nextElement();
				if (classes != null && !classes.contains(entry)) {
					continue;// skip, not need fix
				}
				clazz = dexFile.loadClass(entry, patchClassLoader);
				if (clazz != null) {
					fixClass(clazz, classLoader);
				}
			}
		} catch (IOException e) {
			Log.e(TAG, "pacth", e);
		}
	}

	/**
	 * fix class
	 *
	 * @param clazz
	 *            class
	 */
	private void fixClass(Class<?> clazz, ClassLoader classLoader) {
	    Log.d("euler", "AndFixManager, fixClass, " + clazz);
		Method[] methods = clazz.getDeclaredMethods();
		MethodReplace methodReplace;
		String clz;
		String meth;
		for (Method method : methods) {
			methodReplace = method.getAnnotation(MethodReplace.class);
			if (methodReplace == null)
				continue;
			clz = methodReplace.clazz();
			meth = methodReplace.method();
			if (!isEmpty(clz) && !isEmpty(meth)) {
				replaceMethod(classLoader, clz, meth, method);
			}
		}
	}

	/**
	 * replace method
	 *
	 * @param classLoader classloader
	 * @param clz class
	 * @param meth name of target method
	 * @param method source method
	 */
	private void replaceMethod(ClassLoader classLoader, String clz,
			String meth, Method method) {
	    Log.d("euler", "AndFixManager, replaceMethod, " + classLoader.toString());
	    Log.d("euler", "AndFixManager, replaceMethod, " + clz);
	    Log.d("euler", "AndFixManager, replaceMethod, " + meth);
	    Log.d("euler", "AndFixManager, replaceMethod, " + method);
		try {
			String key = clz + "@" + classLoader.toString();
			Class<?> clazz = mFixedClass.get(key);
			if (clazz == null) {// class not load
				Class<?> clzz = classLoader.loadClass(clz);
				// initialize target class
				clazz = AndFix.initTargetClass(clzz);
			}
			if (clazz != null) {// initialize class OK
				mFixedClass.put(key, clazz);
				Method src = clazz.getDeclaredMethod(meth,
						method.getParameterTypes());
				AndFix.addReplaceMethod(src, method);
			}
		} catch (Exception e) {
			Log.e(TAG, "replaceMethod", e);
		}
	}

	private static boolean isEmpty(String string) {
	    Log.d("euler", "AndFixManager, isEmpty");
		return string == null || string.length() <= 0;
	}

}


text:
package io.zipkin;

import com.facebook.swift.codec.ThriftConstructor;
import com.facebook.swift.codec.ThriftField;
import com.facebook.swift.codec.ThriftStruct;
import com.google.auto.value.AutoValue;

@AutoValue
@ThriftStruct(value = "Endpoint", builder = AutoValue_Endpoint.Builder.class)
public abstract class Endpoint {

  public static Builder builder() {
    return new AutoValue_Endpoint.Builder();
  }

  public static Builder builder(Endpoint source) {
    return new AutoValue_Endpoint.Builder(source);
  }

  @ThriftField(value = 1)
  public abstract int ipv4();

  @ThriftField(value = 2)
  public abstract short port();

  @ThriftField(value = 3)
  public abstract String serviceName();

  @AutoValue.Builder
  public interface Builder {

    @ThriftField
    Builder ipv4(int ipv4);

    @ThriftField
    Builder port(short port);

    @ThriftField
    Builder serviceName(String serviceName);

    @ThriftConstructor
    Endpoint build();
  }
}


text:
        <form name="searchHUForm" class="form-horizontal">

                    <input type="text" class="form-control input-lg" ng-model="neighborhood" id="inputNeighborhood" placeholder="Digite o bairro em que se encontra a unidade de saúde">

                    <button class="btn btn-primary btn-lg" ng-click="searchHU(neighborhood)"> Pesquisar</button>

        </form>

Nome: {{unit.nome}}

Unidade do Bairro: {{unit.bairro}}

Localização: {{unit.rua}}

Código: {{unit.codigo}}

Tipo: {{unit.type}}

Número de medicos: {{unit.numeroMedicos}}

Número de pacientes por dia: {{unit.numeroPacientesDia}}

Especialidades da unidade de saúde:

                                {{esp.descricao}}


text:
<!doctype html>

  <meta charset="utf-8">
  <link rel="canonical" href="/user_consent/external_user_consent_flow/">
  <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">

  <title>External Consent Prompt Dialog</title>

  <amp-consent id="myUserConsent" layout="nodisplay">

        <amp-iframe
          layout="fill"
          sandbox="allow-scripts allow-same-origin allow-popups allow-popups-to-escape-sandbox"
            src="<% api.host %>/iframe/external-consent-iframe.html">

Loading

        </amp-iframe>

      <button on="tap:myUserConsent.prompt()">Update Consent</button>

  </amp-consent>

  <amp-img data-block-on-consent src="/img/landscape_lake_300x201.jpg" width="300" height="201">
  </amp-img>


text:
- Added support for retry mechanism on rate limit.
- Updated the Docker image to: *demisto/crypto:1.0.0.36225*.


text:
{-
 - Copyright (c) 2017 The Agile Monkeys S.L. <hackers@theam.io>
 -
 - 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.
 -}
module AxiomUtils where

import GHCJS.HPlay.View hiding (id, atr)

setContents :: Perch -> String -> Perch
setContents element _ = element

addHeader :: Perch -> IO ()
addHeader _ = return ()

atr :: String -> String -> (String, String)
atr = (,)

id :: String -> (String, String)
id = atr "id"

at :: String -> UpdateMethod -> Widget a -> Widget a
at _ _ w = w

wlink :: a -> Perch -> Widget a
wlink _ _ = empty


text:
package se.cyclic.jcyclic;

import org.jgrapht.DirectedGraph;
import org.jgrapht.alg.CycleDetector;
import org.jgrapht.alg.StrongConnectivityInspector;
import org.jgrapht.alg.cycle.TiernanSimpleCycles;
import org.jgrapht.graph.DefaultDirectedGraph;
import org.jgrapht.graph.DefaultEdge;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Set;

/**
 * A class that represents a graph of the package dependencies of some classes.
 * The classes that are analysed are provided by an optional instance of ClassFinder.
 * If a ClassFinder is not specified then the current classpath is used.
 * <br>
 * All classes that are found will form a part of the dependency graph, even if they
 * don't have any dependencies.
 */
public class ClassDependencies {
    private static final String NO_PACAKGE = "<no package>";
    private DirectedGraph<String, DefaultEdge> packageGraph = new DefaultDirectedGraph<>(DefaultEdge.class);
    private DirectedGraph<String, DefaultEdge> classGraph = new DefaultDirectedGraph<>(DefaultEdge.class);
    private ClassFinder classFinder;
    private String basePackage;

    /**
     * Create a cyclic dependency analyser for all the classes and package under the specified base package.
     *
     * @param classFinder something to help find classes on the classpath
     * @param basePackage the parent package for all classes to analyse
     */
    public ClassDependencies(ClassFinder classFinder, String basePackage) {
        this.classFinder = classFinder;
        this.basePackage = basePackage;
        analyseClasses();
    }

    /**
     * Creates and analyses the dependencies of classes on the classpath and under the specified base package.
     *
     * @param basePackage the parent package for all classes to analyse
     */
    public ClassDependencies(String basePackage) {
        this.classFinder = new ClasspathFinder(basePackage);
        this.basePackage = basePackage;
        analyseClasses();
    }

    private void analyseClasses() {
        getClassDependencyGraph(classFinder.getJavaClassInformationList());
    }

    private void getClassDependencyGraph(Collection<JavaClassInformation> classes) {
        packageGraph = new DefaultDirectedGraph<>(DefaultEdge.class);

        for (final JavaClassInformation from : classes) {
            Set<String> efferentDependencies = from.getReferencedClasses();
            String fromPkg = convertToPackage(from.getFullyQualifiedClassName());

            if (fromPkg.startsWith(basePackage)) {
                packageGraph.addVertex(fromPkg);
                classGraph.addVertex(from.getFullyQualifiedClassName());
                for (String to : efferentDependencies) {
                    if (to.startsWith(basePackage) || to.startsWith(NO_PACAKGE)) {
                        classGraph.addVertex(to);
                        classGraph.addEdge(from.getFullyQualifiedClassName(), to);
                        String toPkg = convertToPackage(to);
                        if (!fromPkg.equals(toPkg)) {
                            packageGraph.addVertex(toPkg);
                            packageGraph.addEdge(fromPkg, toPkg);
                        }
                    }

                }
            }
        }
    }

    /**
     * Returns a set of all the packages in the dependency graph that are involved in a cycle.
     *
     * @return a set of package names
     */
    public Set<String> getPackagesInCycles() {
        CycleDetector<String, DefaultEdge> cycleDetector = new CycleDetector<>(packageGraph);
        return cycleDetector.findCycles();
    }

    /**
     * Returns the number of packages in the dependency graph including those not involved in a dependency cycle.
     *
     * @return the number of packages
     */
    public int getNumberOfPackages() {
        return packageGraph.vertexSet().size();
    }

    /**
     * Returns the package from a fully qualified class name. For example, a.b.c.Clazz will be converted to
     * a.b.c.
     * @param fullyQualifiedClassName a fully qualified class name
     * @return the class's package
     */
    private String convertToPackage(String fullyQualifiedClassName) {
        final int lastDotIndex = fullyQualifiedClassName.lastIndexOf('.');
        if (lastDotIndex == -1) {
            return NO_PACAKGE;
        }
        return fullyQualifiedClassName.substring(0, lastDotIndex);
    }

    /**
     * Returns the ratio of number of packages in cycles to the total number of packages in the dependency graph.
     * @return the cycle ratio
     */
    public double getCycleToPackageRatio() {
        int numberOfPackages = getNumberOfPackages();
        int numberOfPackagesInCycles = getPackagesInCycles().size();

        if (numberOfPackages == 0) {
            return 0;
        }
        return (double) numberOfPackagesInCycles / numberOfPackages;
    }

    public List<List<String>> getPackageCycles() {
        return new TiernanSimpleCycles<>(packageGraph).findSimpleCycles();
    }

    public int getNumberOfCycles() {
        return new TiernanSimpleCycles<>(packageGraph).findSimpleCycles().size();
    }

    public List<Dependency> getEdges() {
        final List<Dependency> result = new ArrayList<>();
        final Set<DefaultEdge> defaultEdges = packageGraph.edgeSet();
        for (DefaultEdge defaultEdge : defaultEdges) {
            result.add(new Dependency(packageGraph.getEdgeSource(defaultEdge), packageGraph.getEdgeTarget(defaultEdge)));
        }
        return result;
    }

    public List<Set<String>> getStrongComponents() {
        StrongConnectivityInspector<String,DefaultEdge> strongConnectivityInspector = new StrongConnectivityInspector<>(classGraph);
        return strongConnectivityInspector.stronglyConnectedSets();
    }
}


text:
<?php

namespace Pum\Core\Extension\Search\Query;

class Range extends Query
{
    const QUERY_KEY = 'range';

    private $field;
    private $ranges = array();
    private $boost;

    public function setField($field)
    {
        $this->field = $field;

        return $this;
    }

    public function setBoost($boost)
    {
        $this->boost = $boost;

        return $this;
    }

    public function addRange($operator, $value)
    {
        $ranges = array('gte', 'gt', 'lte', 'lt');

        if (!in_array($operator, $ranges)) {
            throw new \RuntimeException('Invalid range operator. Authorized operators are : %s', implode(',', $ranges));
        }

        $this->ranges[$operator] = $value;

        return $this;
    }

    public function getArray()
    {
        if (null === $this->field) {
            throw new \RuntimeException('You must set field to the query, null given');
        }

        $result = $this->ranges;

        if (null !== $this->boost) {
            $result['boost'] = $this->boost;
        }

        return array(
            $this::QUERY_KEY => array(
                $this->field => $result
            )
        );
    }
}


text:
layout: post
title:  "Tema 1: Principios de la Programación"
date:   2017-02-14 00:00:00
curso: 5
categories: linux,historia
---

Próximamente....


text:
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently

#ifdef WIN32

#pragma once

#ifndef VC_EXTRALEAN
#define VC_EXTRALEAN		// Exclude rarely-used stuff from Windows headers
#endif

// Modify the following defines if you have to target a platform prior to the ones specified below.
// Refer to MSDN for the latest info on corresponding values for different platforms.
#ifndef WINVER				// Allow use of features specific to Windows XP or later.
#define WINVER 0x0501		// Change this to the appropriate value to target other versions of Windows.
#endif

#ifndef _WIN32_WINNT		// Allow use of features specific to Windows XP or later.
#define _WIN32_WINNT 0x0501	// Change this to the appropriate value to target other versions of Windows.
#endif

#ifndef _WIN32_WINDOWS		// Allow use of features specific to Windows 98 or later.
#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
#endif

#ifndef _WIN32_IE			// Allow use of features specific to IE 6.0 or later.
#define _WIN32_IE 0x0600	// Change this to the appropriate value to target other versions of IE.
#endif

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS	// some CString constructors will be explicit

#define WIN32_LEAN_AND_MEAN		// Exclude rarely-used stuff from Windows headers
// Windows Header Files:
#include <windows.h>
//#include <afx.h>

/*
#include <afxwin.h>         // MFC core and standard components
#include <afxext.h>         // MFC extensions
#include <afxmt.h>          // multi threaded

#ifndef _AFX_NO_OLE_SUPPORT
#include <afxole.h>         // MFC OLE classes
#include <afxodlgs.h>       // MFC OLE dialog classes
#include <afxdisp.h>        // MFC Automation classes
#endif // _AFX_NO_OLE_SUPPORT

#ifndef _AFX_NO_DB_SUPPORT
#include <afxdb.h>			// MFC ODBC database classes
#endif // _AFX_NO_DB_SUPPORT

#ifndef _AFX_NO_DAO_SUPPORT
#include <afxdao.h>			// MFC DAO database classes
#endif // _AFX_NO_DAO_SUPPORT

#ifndef _AFX_NO_OLE_SUPPORT
#include <afxdtctl.h>		// MFC support for Internet Explorer 4 Common Controls
#endif
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h>			// MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
*/

#endif


text:
package cz.metacentrum.perun.core.api;

import java.util.ArrayList;
import java.util.List;

/**
 * Class represents rights of an attribute. The rights relates to an Attribute and
 * a Role. Object ActionType represents one right (READ or WRITE).
 *
 * @author Jiří Mauritz
 */
public class AttributeRights {

	/**
	 * ID of the attribute.
	 */
	private int attributeId;

	/**
	 * Role, that specifies the users, who have the rights upon the attribute.
	 */
	private Role role;

	/**
	 * List of all rights the role has upon the attribute.
	 */
	private List<ActionType> rights;

	public AttributeRights() {}

	public AttributeRights(int attributeId, Role role, List<ActionType> rights) {
		this.attributeId = attributeId;
		this.role = role;
		if (rights == null) {
			this.rights = new ArrayList<ActionType>();
		} else {
			this.rights = rights;
		}
	}

	public int getAttributeId() {
		return attributeId;
	}

	public Role getRole() {
		return role;
	}

	public List<ActionType> getRights() {
		return rights;
	}

	public void setAttributeId(int attributeId) {
		this.attributeId = attributeId;
	}

	public void setRole(Role role) {
		this.role = role;
	}

	public void setRights(List<ActionType> rights) {
		this.rights = rights;
	}

	@Override
	public int hashCode() {
		int hash = 7;
		hash = 61 * hash + this.attributeId;
		hash = 61 * hash + (this.role != null ? this.role.hashCode() : 0);
		return hash;
	}

	@Override
	public boolean equals(Object obj) {
		if (obj == null) {
			return false;
		}
		if (!(obj instanceof AttributeRights)) {
			return false;
		}
		final AttributeRights other = (AttributeRights) obj;
		if (this.attributeId != other.attributeId) {
			return false;
		}
		if (this.role != other.role) {
			return false;
		}
		return true;
	}

	@Override
	public String toString() {
		StringBuilder str = new StringBuilder();

		return str.append("AttributeRights{").append("attributeId=").append(attributeId).append(", role=").append(role).append(", rights=").append(rights).append('}').toString();
	}

}


text:
/**
 * @fileoverview The endpoint for returning Login dialog. It passes the return
 * code back to AMP runtime using window messaging.
 */

import '../../../third_party/babel/custom-babel-helpers';
import '../../../src/polyfills';
import {LoginDoneDialog} from './amp-login-done-dialog';
import {initLogConstructor} from '../../../src/log';
import {onDocumentReady} from '../../../src/document-ready';

initLogConstructor();

onDocumentReady(document, () => {
  new LoginDoneDialog(window).start();
});


text:
package ru.mbogomolov.tracker;

import org.junit.Before;
import org.junit.Test;

import static org.hamcrest.core.Is.is;
import static org.junit.Assert.*;

/**
 * Tests for all method by Tracker class.
 * @author Michael Bogomolov (mybogomolov@gmail.com)
 */

public class TrackerTest {
    /**
     * pre-created data for tests.
     */
    Task taskTest;
    Task taskTest1;
    Task taskTest2;
    Tracker trackerTest;
    Task[] tasksTestArray;

    /**
     * pre-created data for tests.
     * create Task objects and Tracker object
     * test addTask method
     */
    @Before
    public void dataForTests() {
        this.taskTest = new Task("Cat", "Clean the cat", 1555);
        this.taskTest1 = new Task("Dog", "Feed the dog", 1600);
        this.taskTest2 = new Task("Fish", "Talk with fish", 1605);
        this.tasksTestArray = new Task[] {this.taskTest, this.taskTest1, this.taskTest2};
        this.trackerTest = new Tracker();
        for (int i = 0; i < this.tasksTestArray.length; i++) {
            this.trackerTest.addTask(this.tasksTestArray[i]);
        }
    }

    /**
     * test addTask method.
     * test getAll method
     */
    @Test
    public void whenAddTaskThenFillArray() {
        assertArrayEquals(this.tasksTestArray, this.trackerTest.getAll());
    }

    /**
     * test addTask method.
     */
    @Test
    public void whenAddNewTaskThenCheck() {
        Task result = new Task();
        this.trackerTest.addTask(result);
        assertNotNull(result);
    }

    /**
     * test removeTask method.
     */
    @Test
    public void whenRemoveTaskThenNullCell() {
        Task[] result = new Task[] {null, taskTest1, taskTest2};
        this.trackerTest.removeTask(taskTest);
        assertArrayEquals(result, this.trackerTest.getAll());
    }

    /**
     * test updateTask method.
     * test edit name
     */
    @Test
    public void whenEditNameThenUpdatedTask() {
        this.taskTest.setName(this.taskTest1.getName());
        this.trackerTest.updateTask(this.taskTest);
        assertThat(taskTest.getName(), is(taskTest1.getName()));
    }

    /**
     * test updateTask method.
     * test edit description
     */
    @Test
    public void whenEditDescriptionThenUpdateTask() {
        this.taskTest2.setDescription(this.taskTest1.getDescription());
        this.trackerTest.updateTask(this.taskTest2);
        assertThat(taskTest2.getDescription(), is(taskTest1.getDescription()));
    }

    /**
     * test updateTask method.
     * test edit creation
     */
    @Test
    public void whenEditCreationThenUpdateTask() {
        this.taskTest1.setCreate(this.taskTest.getCreate());
        this.trackerTest.updateTask(this.taskTest1);
        assertThat(taskTest1.getCreate(), is(taskTest.getCreate()));
    }

    /**
     * test addComment method.
     */
    @Test
    public void whenAddCommentThenAdd() {
        Task result = new Task("Robot", "Repair him", 2100, "done");
        this.trackerTest.addComment(this.taskTest.getId(), result.getComment());
        assertThat(this.taskTest.getComment(), is(result.getComment()));
    }

    /**
     * test getById method.
     */
    @Test
    public void whenFindByIdThenShow() {
        assertEquals(this.taskTest, trackerTest.getById(taskTest.getId()));
    }

    /**
     * test getById method with null.
     */
    @Test
    public void whenFindByIdNullThenBreak() {
        trackerTest.removeTask(taskTest);
        assertEquals(null, trackerTest.getById(taskTest.getId()));
    }

    /**
     * test getByName method.
     */
    @Test
    public void whenFindByNameThenShow() {
        assertEquals(this.taskTest, trackerTest.getByName(taskTest.getName()));
    }
}


text:
package org.geolocate.webservices.svcv2;

import jakarta.jws.WebMethod;
import jakarta.jws.WebParam;
import jakarta.jws.WebResult;
import jakarta.jws.WebService;
import jakarta.xml.bind.annotation.XmlSeeAlso;
import jakarta.xml.ws.Holder;
import jakarta.xml.ws.RequestWrapper;
import jakarta.xml.ws.ResponseWrapper;

/**
 * This class was generated by the JAX-WS RI.
 * JAX-WS RI 3.0.2
 * Generated source version: 3.0
 *
 */
@WebService(name = "geolocatesvcSoap", targetNamespace = "http://geo-locate.org/webservices/")
@XmlSeeAlso({
    ObjectFactory.class
})
public interface GeolocatesvcSoap {

    /**
     * returns the names of all waterbodies found with a locality description.
*U.S. localities only, county required*
     *
     * @param localityDescription
     * @return
     *     returns org.geolocate.webservices.svcv2.ArrayOfString
     */
    @WebMethod(operationName = "FindWaterBodiesWithinLocality", action = "http://geo-locate.org/webservices/FindWaterBodiesWithinLocality")
    @WebResult(name = "FindWaterBodiesWithinLocalityResult", targetNamespace = "http://geo-locate.org/webservices/")
    @RequestWrapper(localName = "FindWaterBodiesWithinLocality", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.FindWaterBodiesWithinLocality")
    @ResponseWrapper(localName = "FindWaterBodiesWithinLocalityResponse", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.FindWaterBodiesWithinLocalityResponse")
    public ArrayOfString findWaterBodiesWithinLocality(
        @WebParam(name = "LocalityDescription", targetNamespace = "http://geo-locate.org/webservices/")
        LocalityDescription localityDescription);

    /**
     * Georeferences a locality description. returns a 'Georef_Result_Set' given a 'LocalityDescription' and boolean georeferencing options.
Language key refers to an integer representing different languages libraries. Will default to basic english (0) if invalid key is provided.
*GLOBAL*
     *
     * @param doPoly
     * @param displacePoly
     * @param doUncert
     * @param polyAsLinkID
     * @param restrictToLowestAdm
     * @param findWaterbody
     * @param languageKey
     * @param localityDescription
     * @param hwyX
     * @return
     *     returns org.geolocate.webservices.svcv2.GeorefResultSet
     */
    @WebMethod(operationName = "Georef", action = "http://geo-locate.org/webservices/Georef")
    @WebResult(name = "Result", targetNamespace = "http://geo-locate.org/webservices/")
    @RequestWrapper(localName = "Georef", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.Georef")
    @ResponseWrapper(localName = "GeorefResponse", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.GeorefResponse")
    public GeorefResultSet georef(
        @WebParam(name = "LocalityDescription", targetNamespace = "http://geo-locate.org/webservices/")
        LocalityDescription localityDescription,
        @WebParam(name = "HwyX", targetNamespace = "http://geo-locate.org/webservices/")
        boolean hwyX,
        @WebParam(name = "FindWaterbody", targetNamespace = "http://geo-locate.org/webservices/")
        boolean findWaterbody,
        @WebParam(name = "RestrictToLowestAdm", targetNamespace = "http://geo-locate.org/webservices/")
        boolean restrictToLowestAdm,
        @WebParam(name = "doUncert", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doUncert,
        @WebParam(name = "doPoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doPoly,
        @WebParam(name = "displacePoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean displacePoly,
        @WebParam(name = "polyAsLinkID", targetNamespace = "http://geo-locate.org/webservices/")
        boolean polyAsLinkID,
        @WebParam(name = "LanguageKey", targetNamespace = "http://geo-locate.org/webservices/")
        int languageKey);

    /**
     * Georeferences a locality description. returns a 'Georef_Result_Set' given Country, State, County, LocalityString and boolean georeferencing options.
Use this one if you are unsure of which to use.
Language key refers to an integer representing different languages libraries. Will default to basic english (languagekey=0) if invalid key is provided.
*GLOBAL*
     *
     * @param country
     * @param doPoly
     * @param displacePoly
     * @param county
     * @param localityString
     * @param doUncert
     * @param polyAsLinkID
     * @param restrictToLowestAdm
     * @param state
     * @param findWaterbody
     * @param languageKey
     * @param hwyX
     * @return
     *     returns org.geolocate.webservices.svcv2.GeorefResultSet
     */
    @WebMethod(operationName = "Georef2", action = "http://geo-locate.org/webservices/Georef2")
    @WebResult(name = "Result", targetNamespace = "http://geo-locate.org/webservices/")
    @RequestWrapper(localName = "Georef2", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.Georef2")
    @ResponseWrapper(localName = "Georef2Response", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.Georef2Response")
    public GeorefResultSet georef2(
        @WebParam(name = "Country", targetNamespace = "http://geo-locate.org/webservices/")
        String country,
        @WebParam(name = "State", targetNamespace = "http://geo-locate.org/webservices/")
        String state,
        @WebParam(name = "County", targetNamespace = "http://geo-locate.org/webservices/")
        String county,
        @WebParam(name = "LocalityString", targetNamespace = "http://geo-locate.org/webservices/")
        String localityString,
        @WebParam(name = "HwyX", targetNamespace = "http://geo-locate.org/webservices/")
        boolean hwyX,
        @WebParam(name = "FindWaterbody", targetNamespace = "http://geo-locate.org/webservices/")
        boolean findWaterbody,
        @WebParam(name = "RestrictToLowestAdm", targetNamespace = "http://geo-locate.org/webservices/")
        boolean restrictToLowestAdm,
        @WebParam(name = "doUncert", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doUncert,
        @WebParam(name = "doPoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doPoly,
        @WebParam(name = "displacePoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean displacePoly,
        @WebParam(name = "polyAsLinkID", targetNamespace = "http://geo-locate.org/webservices/")
        boolean polyAsLinkID,
        @WebParam(name = "LanguageKey", targetNamespace = "http://geo-locate.org/webservices/")
        int languageKey);

    /**
     * Georeferences a locality description. returns a 'Georef_Result_Set' given vLocality, vGeorgraphy and boolean georeferencing options.  VLocality and VGeogrpahy are fields specific to BioGeomancer.
Language key refers to an integer representing different languages libraries. Will default to basic english (0) if invalid key is provided
*North American Localities Only*
     *
     * @param vGeography
     * @param doPoly
     * @param displacePoly
     * @param vLocality
     * @param doUncert
     * @param polyAsLinkID
     * @param restrictToLowestAdm
     * @param findWaterbody
     * @param languageKey
     * @param hwyX
     * @return
     *     returns org.geolocate.webservices.svcv2.GeorefResultSet
     */
    @WebMethod(operationName = "Georef3", action = "http://geo-locate.org/webservices/Georef3")
    @WebResult(name = "Result", targetNamespace = "http://geo-locate.org/webservices/")
    @RequestWrapper(localName = "Georef3", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.Georef3")
    @ResponseWrapper(localName = "Georef3Response", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.Georef3Response")
    public GeorefResultSet georef3(
        @WebParam(name = "vLocality", targetNamespace = "http://geo-locate.org/webservices/")
        String vLocality,
        @WebParam(name = "vGeography", targetNamespace = "http://geo-locate.org/webservices/")
        String vGeography,
        @WebParam(name = "HwyX", targetNamespace = "http://geo-locate.org/webservices/")
        boolean hwyX,
        @WebParam(name = "FindWaterbody", targetNamespace = "http://geo-locate.org/webservices/")
        boolean findWaterbody,
        @WebParam(name = "RestrictToLowestAdm", targetNamespace = "http://geo-locate.org/webservices/")
        boolean restrictToLowestAdm,
        @WebParam(name = "doUncert", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doUncert,
        @WebParam(name = "doPoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doPoly,
        @WebParam(name = "displacePoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean displacePoly,
        @WebParam(name = "polyAsLinkID", targetNamespace = "http://geo-locate.org/webservices/")
        boolean polyAsLinkID,
        @WebParam(name = "LanguageKey", targetNamespace = "http://geo-locate.org/webservices/")
        int languageKey);

    /**
     * Snaps given point to nearest water body found from given locality description.
*U.S. localities only, county required*
     *
     * @param wgs84Coordinate
     * @param localityDescription
     */
    @WebMethod(operationName = "SnapPointToNearestFoundWaterBody", action = "http://geo-locate.org/webservices/SnapPointToNearestFoundWaterBody")
    @RequestWrapper(localName = "SnapPointToNearestFoundWaterBody", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.SnapPointToNearestFoundWaterBody")
    @ResponseWrapper(localName = "SnapPointToNearestFoundWaterBodyResponse", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.SnapPointToNearestFoundWaterBodyResponse")
    public void snapPointToNearestFoundWaterBody(
        @WebParam(name = "LocalityDescription", targetNamespace = "http://geo-locate.org/webservices/")
        LocalityDescription localityDescription,
        @WebParam(name = "WGS84Coordinate", targetNamespace = "http://geo-locate.org/webservices/", mode = WebParam.Mode.INOUT)
        Holder<GeographicPoint> wgs84Coordinate);

    /**
     * Snaps given point to nearest water body found from given locality description terms.
*U.S. localities only, county required*
     *
     * @param wgs84Latitude
     * @param country
     * @param wgs84Longitude
     * @param county
     * @param localityString
     * @param state
     * @return
     *     returns org.geolocate.webservices.svcv2.GeographicPoint
     */
    @WebMethod(operationName = "SnapPointToNearestFoundWaterBody2", action = "http://geo-locate.org/webservices/SnapPointToNearestFoundWaterBody2")
    @WebResult(name = "WGS84Coordinate", targetNamespace = "http://geo-locate.org/webservices/")
    @RequestWrapper(localName = "SnapPointToNearestFoundWaterBody2", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.SnapPointToNearestFoundWaterBody2")
    @ResponseWrapper(localName = "SnapPointToNearestFoundWaterBody2Response", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.SnapPointToNearestFoundWaterBody2Response")
    public GeographicPoint snapPointToNearestFoundWaterBody2(
        @WebParam(name = "Country", targetNamespace = "http://geo-locate.org/webservices/")
        String country,
        @WebParam(name = "State", targetNamespace = "http://geo-locate.org/webservices/")
        String state,
        @WebParam(name = "County", targetNamespace = "http://geo-locate.org/webservices/")
        String county,
        @WebParam(name = "LocalityString", targetNamespace = "http://geo-locate.org/webservices/")
        String localityString,
        @WebParam(name = "WGS84Latitude", targetNamespace = "http://geo-locate.org/webservices/")
        double wgs84Latitude,
        @WebParam(name = "WGS84Longitude", targetNamespace = "http://geo-locate.org/webservices/")
        double wgs84Longitude);

    /**
     * Returns an uncertainty polygon given the unique id used to generate it.
     *
     * @param polyGenerationKey
     * @return
     *     returns java.lang.String
     */
    @WebMethod(operationName = "CalcUncertaintyPoly", action = "http://geo-locate.org/webservices/CalcUncertaintyPoly")
    @WebResult(name = "CalcUncertaintyPolyResult", targetNamespace = "http://geo-locate.org/webservices/")
    @RequestWrapper(localName = "CalcUncertaintyPoly", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.CalcUncertaintyPoly")
    @ResponseWrapper(localName = "CalcUncertaintyPolyResponse", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.CalcUncertaintyPolyResponse")
    public String calcUncertaintyPoly(
        @WebParam(name = "PolyGenerationKey", targetNamespace = "http://geo-locate.org/webservices/")
        String polyGenerationKey);

    /**
     * Georeferences a locality description. returns a 'Georef_Result_Set' given Country, State, County, LocalityString and boolean georeferencing options.  Also adds results from Biogeomancer to the mix. May take a long time to get results back from BG.
Language key refers to an integer representing different languages libraries. Will default to basic english (languagekey=0) if invalid key is provided.
*GLOBAL*
     *
     * @param country
     * @param doPoly
     * @param displacePoly
     * @param county
     * @param localityString
     * @param doUncert
     * @param polyAsLinkID
     * @param restrictToLowestAdm
     * @param state
     * @param findWaterbody
     * @param languageKey
     * @param hwyX
     * @return
     *     returns org.geolocate.webservices.svcv2.GeorefResultSet
     */
    @WebMethod(operationName = "Georef2plusBG", action = "http://geo-locate.org/webservices/Georef2plusBG")
    @WebResult(name = "Result", targetNamespace = "http://geo-locate.org/webservices/")
    @RequestWrapper(localName = "Georef2plusBG", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.Georef2PlusBG")
    @ResponseWrapper(localName = "Georef2plusBGResponse", targetNamespace = "http://geo-locate.org/webservices/", className = "org.geolocate.webservices.svcv2.Georef2PlusBGResponse")
    public GeorefResultSet georef2PlusBG(
        @WebParam(name = "Country", targetNamespace = "http://geo-locate.org/webservices/")
        String country,
        @WebParam(name = "State", targetNamespace = "http://geo-locate.org/webservices/")
        String state,
        @WebParam(name = "County", targetNamespace = "http://geo-locate.org/webservices/")
        String county,
        @WebParam(name = "LocalityString", targetNamespace = "http://geo-locate.org/webservices/")
        String localityString,
        @WebParam(name = "HwyX", targetNamespace = "http://geo-locate.org/webservices/")
        boolean hwyX,
        @WebParam(name = "FindWaterbody", targetNamespace = "http://geo-locate.org/webservices/")
        boolean findWaterbody,
        @WebParam(name = "RestrictToLowestAdm", targetNamespace = "http://geo-locate.org/webservices/")
        boolean restrictToLowestAdm,
        @WebParam(name = "doUncert", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doUncert,
        @WebParam(name = "doPoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean doPoly,
        @WebParam(name = "displacePoly", targetNamespace = "http://geo-locate.org/webservices/")
        boolean displacePoly,
        @WebParam(name = "polyAsLinkID", targetNamespace = "http://geo-locate.org/webservices/")
        boolean polyAsLinkID,
        @WebParam(name = "LanguageKey", targetNamespace = "http://geo-locate.org/webservices/")
        int languageKey);

}


text:
/*-------------------------------------------------------------------------
  Copyright 2008 Sandia Corporation.
  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
  the U.S. Government retains certain rights in this software.
-------------------------------------------------------------------------*/
// .NAME vtkExtractSelectedRows - return selected rows of a table
//
// .SECTION Description
// The first input is a vtkTable to extract rows from.
// The second input is a vtkSelection containing the selected indices.
// The third input is a vtkAnnotationLayers containing selected indices.
// The field type of the input selection is ignored when converted to row
// indices.

#ifndef __vtkExtractSelectedRows_h
#define __vtkExtractSelectedRows_h

#include "vtkFiltersExtractionExport.h" // For export macro
#include "vtkTableAlgorithm.h"

class VTKFILTERSEXTRACTION_EXPORT vtkExtractSelectedRows : public vtkTableAlgorithm
{
public:
  static vtkExtractSelectedRows* New();
  vtkTypeMacro(vtkExtractSelectedRows,vtkTableAlgorithm);
  void PrintSelf(ostream& os, vtkIndent indent);

  // Description:
  // A convenience method for setting the second input (i.e. the selection).
  void SetSelectionConnection(vtkAlgorithmOutput* in);

  // Description:
  // A convenience method for setting the third input (i.e. the annotation layers).
  void SetAnnotationLayersConnection(vtkAlgorithmOutput* in);

  // Description:
  // Specify the first vtkGraph input and the second vtkSelection input.
  int FillInputPortInformation(int port, vtkInformation* info);

  // Description:
  // When set, a column named vtkOriginalRowIds will be added to the output.
  // False by default.
  vtkSetMacro(AddOriginalRowIdsArray, bool);
  vtkGetMacro(AddOriginalRowIdsArray, bool);
  vtkBooleanMacro(AddOriginalRowIdsArray, bool);

protected:
  vtkExtractSelectedRows();
  ~vtkExtractSelectedRows();

  int RequestData(
    vtkInformation*,
    vtkInformationVector**,
    vtkInformationVector*);

  bool AddOriginalRowIdsArray;
private:
  vtkExtractSelectedRows(const vtkExtractSelectedRows&); // Not implemented
  void operator=(const vtkExtractSelectedRows&);   // Not implemented
};

#endif


text:
import platform

import pytest
import dartpy
from dartpy.utils import DartLoader
import os

from tests.util import get_asset_path

def test_parse_skeleton_non_existing_path_returns_null():
    assert os.path.isfile(get_asset_path('skel/cubes.skel')) is True
    loader = DartLoader()
    assert loader.parseSkeleton(get_asset_path('skel/test/does_not_exist.urdf')) is None

def test_parse_skeleton_invalid_urdf_returns_null():
    loader = DartLoader()
    assert loader.parseSkeleton(get_asset_path('urdf/invalid.urdf')) is None

def test_parse_skeleton_missing_mesh_returns_null():
    loader = DartLoader()
    assert loader.parseSkeleton(get_asset_path('urdf/missing_mesh.urdf')) is None

def test_parse_skeleton_invalid_mesh_returns_null():
    loader = DartLoader()
    assert loader.parseSkeleton(get_asset_path('urdf/invalid_mesh.urdf')) is None

def test_parse_skeleton_missing_package_returns_null():
    loader = DartLoader()
    assert loader.parseSkeleton(get_asset_path('urdf/missing_package.urdf')) is None

def test_parse_skeleton_loads_primitive_geometry():
    loader = DartLoader()
    assert loader.parseSkeleton(get_asset_path('urdf/test/primitive_geometry.urdf')) is not None

# Failing with following errors:
# TypeError: No to_python (by-value) converter found for C++ type: std::shared_ptr<dart::simulation::World>
#
# def test_parse_world():
#     loader = DartLoader()
#     assert loader.parseWorld(get_asset_path('urdf/testWorld.urdf')) is not None

def test_parse_joint_properties():
    loader = DartLoader()
    robot = loader.parseSkeleton(get_asset_path('urdf/test/joint_properties.urdf'))
    assert robot is not None

#    joint1 = robot.getJoint(1)
#    assert joint1 is not None
#    assert joint1.getDampingCoefficient(0) == pytest.approx(1.2, 1e-12)
#    assert joint1.getCoulombFriction(0) == pytest.approx(2.3, 1e-12)

#    joint2 = robot.getJoint(2)
#    assert joint2 is not None
#    assert joint2.getPositionLowerLimit(0) == -float("inf")
#    assert joint2.getPositionUpperLimit(0) == float("inf")
#    if not platform.linux_distribution()[1] == '14.04':
#        assert joint2.isCyclic(0)

if __name__ == "__main__":
    pytest.main()


text:
package com.twitter.server

import com.twitter.app.App
import com.twitter.app.lifecycle.Event
import com.twitter.app.lifecycle.Event.PreMain
import com.twitter.finagle.DtabFlags
import com.twitter.finagle.util.DefaultTimer
import com.twitter.util.Timer
import com.twitter.util.logging.Logging
import com.twitter.util.logging.Slf4jBridge

/**
 * Twitter Server defines a template from which servers at Twitter are built.
 * It provides common application components such as an administrative HTTP
 * server, tracing, stats, etc. These features are wired in correctly for
 * use in production at Twitter.
 *
 * For DI (Dependency Injection) Twitter Server uses self-typed Scala traits
 * that might be mixed in the `TwitterServer` trait. The common practice is
 * to define self-typed traits against the [[App]] trait as shown below.
 *
 * {{{
 *   import com.twitter.app.App
 *   import com.twitter.server.TwitterServer
 *
 *   trait MyModule { self: App =>
 *     // module logic
 *   }
 *
 *   object MyApp extends TwitterServer with MyModule {
 *     // app logic
 *   }
 * }}}
 *
 * Note: the Slf4jBridge trait MUST be defined first to properly bridge legacy
 * logging APIs.
 */
trait TwitterServer
    extends App
    with Slf4jBridge
    with Logging
    with Stats
    with Linters
    with DtabFlags
    with Hooks
    with AdminHttpServer
    with Lifecycle {

  /** Don't let applications opt-out */
  final override val suppressGracefulShutdownErrors: Boolean = false

  /** Use the Finagle DefaultTimer */
  override protected lazy val shutdownTimer: Timer = DefaultTimer

  // The `main()` will block until `close()` is initiated, so we need
  // to use the last phase that completes prior to Main, which is PreMain.
  protected[twitter] def startupCompletionEvent: Event = PreMain
}

/**
 * A Java-friendly version of the [[TwitterServer]].
 *
 * In addition to [[TwitterServer]], this abstract class defines its own
 * Java-friendly lifecycle methods `onInit`, `preMain`, `postMain` and
 * `onExit` that might be overridden in a concrete class.
 *
 * In order to launch the `AbstractTwitterServer` instance, the `main`
 * method should be explicitly defined. It makes sense to define it
 * within an inner class `Main` as shown below.
 *
 * {{{
 *   public class JavaServer extends AbstractTwitterServer {
 *     public static class Main {
 *       public static void main(String[] args) {
 *         new JavaServer().main(args);
 *       }
 *     }
 *   }
 * }}}
 *
 * The `Main` class containing the `main` method may be launched via
 * `java JavaServer$Main`.
 */
abstract class AbstractTwitterServer extends TwitterServer {

  /**
   * Called prior to application initialization.
   */
  def onInit(): Unit = ()

  /**
   * Called before the `main` method.
   */
  def preMain(): Unit = ()

  /**
   * Called after the `main` method.
   */
  def postMain(): Unit = ()

  /**
   * Called prior to application exiting.
   */
  def onExit(): Unit = ()

  /**
   * Called prior to application exiting after `onExit`.
   */
  def onExitLast(): Unit = ()

  /**
   * The `main` method of this server.
   */
  @throws[Throwable]
  def main(): Unit = ()

  init(onInit())
  premain(preMain())
  postmain(postMain())
  onExit(onExit())
  onExitLast(onExitLast())
}


text:
package drones.flightcontrol.messages;

/**
 * Sent from the controlTower when more flights are added than allowed.
 *
 * Created by Sander on 26/03/2015.
 */
public class ControlTowerFullMessage {

    private AddFlightMessage m;

    public ControlTowerFullMessage(AddFlightMessage m) {
        this.m = m;
    }
}


text:
// Copyright (c) 2011 The LevelDB Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. See the AUTHORS file for names of contributors.

#ifndef STORAGE_LEVELDB_DB_DB_IMPL_H_
#define STORAGE_LEVELDB_DB_DB_IMPL_H_

#include <set>
#include "db/dbformat.h"
#include "db/log_writer.h"
#include "db/snapshot.h"
#include "include/db.h"
#include "include/env.h"
#include "port/port.h"

namespace leveldb {

class MemTable;
class TableCache;
class Version;
class VersionEdit;
class VersionSet;

// 建议看 db 主要操作时如: 打开, 写等, 列出主要的执行流程, 并考虑各种异常情况下的可恢复性.
class DBImpl : public DB {
 public:
  DBImpl(const Options& options, const std::string& dbname);
  virtual ~DBImpl();

  // Implementations of the DB interface
  virtual Status Put(const WriteOptions&, const Slice& key, const Slice& value);
  virtual Status Delete(const WriteOptions&, const Slice& key);
  virtual Status Write(const WriteOptions& options, WriteBatch* updates);
  virtual Status Get(const ReadOptions& options,
                     const Slice& key,
                     std::string* value);
  virtual Iterator* NewIterator(const ReadOptions&);
  virtual const Snapshot* GetSnapshot();
  virtual void ReleaseSnapshot(const Snapshot* snapshot);
  // 这么粗暴的接口? 为啥不提供个成员函数呢?
  virtual bool GetProperty(const Slice& property, uint64_t* value);
  // 我觉得这个函数没啥意义吧?
  virtual void GetApproximateSizes(const Range* range, int n, uint64_t* sizes);

  // Extra methods (for testing) that are not in the public DB interface

  // Compact any files in the named level that overlap [begin,end]
  void TEST_CompactRange(
      int level,
      const std::string& begin,
      const std::string& end);

  // Force current memtable contents to be compacted.
  Status TEST_CompactMemTable();

  // Return an internal iterator over the current state of the database.
  // The keys of this iterator are internal keys (see format.h).
  // The returned iterator should be deleted when no longer needed.
  Iterator* TEST_NewInternalIterator();

 private:
  friend class DB;

  Iterator* NewInternalIterator(const ReadOptions&,
                                SequenceNumber* latest_snapshot);

  // 会创建并初始化 dbname 指定的数据库, dbname 原数据会全部丢失.
  Status NewDB();

  // Recover the descriptor from persistent storage.  May do a significant
  // amount of work to recover recently logged updates.  Any changes to
  // be made to the descriptor are added to *edit.
  // recover recently logged updates 所产生的 Any changes to be made to the descriptor are added to
  // *edit.
  Status Recover(VersionEdit* edit);

  // Apply the specified updates and save the resulting descriptor to
  // persistent storage.  If cleanup_mem is non-NULL, arrange to
  // delete it when all existing snapshots have gone away iff VersionSet::LogAndApply()
  // returns OK.
  // Q: delete it when all existing snapshots have gone away. 啥意思?
  /* 此时 edit 表示一堆尚未持久化以及尚未应用到 VersionSet 中的变更. Install() 将 edit 持久化以及引用到
   * versionset 中. 可以参考实现了解 new_log_number, cleanup_mem 的语义.
   *
   * 另外一个角度来看, edit 存储着 redo old log 所产生的 server state 变更记录, new log number 指定了已经打开
   * 的 new log 的 number, Install() 会原子地完成如下事情:
   *    1. 持久化与 apply edit -> version set;
   *    2. 持久化与 apply new log number;
   * 既当 Install() 成功返回时, old log 可以被安全地删除. 当 Install() 出错时, old log 需要保留, 并且总是
   * 可以再一次 redo old log.
   */
  Status Install(VersionEdit* edit,
                 uint64_t new_log_number,
                 MemTable* cleanup_mem);

  void MaybeIgnoreError(Status* s) const;

  // Delete any unneeded files and stale in-memory entries.
  // 这里 stale in-memory entries 是指 table cache 中已经被持久化设备删除但是仍然存在于 table cache 中的项.
  void DeleteObsoleteFiles();

  // Called when an iterator over a particular version of the
  // descriptor goes away.
  // Unref 会对 dbimpl mutex_ 加锁啊!
  static void Unref(void* arg1, void* arg2);

  // Compact the in-memory write buffer to disk.  Switches to a new
  // log-file/memtable and writes a new descriptor iff successful.
  // 严格地说, 这里并没有 write a new descriptor; 而是更新一个已经存在的 descriptor.
  // CompactMemTable() 具体的操作流程可以参见实现.
  Status CompactMemTable();

  // log file 中的 record 是 WriteBatch 序列化后的内容.
  // max_sequence 是指 recover log file 的过程中遇到的最大的 sequence number.
  Status RecoverLogFile(uint64_t log_number,
                        VersionEdit* edit,
                        SequenceNumber* max_sequence);

  // 将 mem 写入 disk 中, 同时将对 server state 的更新记录在 edit 中.
  Status WriteLevel0Table(MemTable* mem, VersionEdit* edit);

  bool HasLargeValues(const WriteBatch& batch) const;

  // Process data in "*updates" and return a status.  "assigned_seq"
  // is the sequence number assigned to the first mod in "*updates".
  // If no large values are encountered, "*final" is set to "updates".
  // If large values were encountered, registers the references of the
  // large values with the VersionSet, writes the large values to
  // files (if appropriate), and allocates a new WriteBatch with the
  // large values replaced with indirect references and stores a
  // pointer to the new WriteBatch in *final.  If *final != updates on
  // return, then the client should delete *final when no longer
  // needed.  Returns OK on success, and an appropriate error
  // otherwise.
  // 为啥这个逻辑很简单的函数能享有一大坨注释, 而其他很难理解的函数连一句话注释都轮不到.
  Status HandleLargeValues(SequenceNumber assigned_seq,
                           WriteBatch* updates,
                           WriteBatch** final);

  // Helper routine for HandleLargeValues
  void MaybeCompressLargeValue(
      const Slice& raw_value,
      Slice* file_bytes,
      std::string* scratch,
      LargeValueRef* ref);

  struct CompactionState;

  void MaybeScheduleCompaction();
  static void BGWork(void* db);
  void BackgroundCall();
  // 执行 compact 操作, background 表明 compact 是后台运行着的.
  void BackgroundCompaction();
  void CleanupCompaction(CompactionState* compact);
  Status DoCompactionWork(CompactionState* compact);

  Status OpenCompactionOutputFile(CompactionState* compact);
  Status FinishCompactionOutputFile(CompactionState* compact, Iterator* input);
  Status InstallCompactionResults(CompactionState* compact);

  // Constant after construction
  Env* const env_;
  const InternalKeyComparator internal_comparator_;
  const Options options_;  // options_.comparator == &internal_comparator_
  bool owns_info_log_;
  const std::string dbname_;

  // table_cache_ provides its own synchronization
  TableCache* table_cache_;

  // Lock over the persistent DB state.  Non-NULL iff successfully acquired.
  FileLock* db_lock_;

  // State below is protected by mutex_
  port::Mutex mutex_;
  port::AtomicPointer shutting_down_;
  port::CondVar bg_cv_;         // Signalled when !bg_compaction_scheduled_
  port::CondVar compacting_cv_;  // Signalled when !compacting_
  // 本来我觉得这里的 last_sequence_ 是用来作为 sst table file name 的数字后缀呢, 后来发现不太可能是==
  SequenceNumber last_sequence_;
  MemTable* mem_;
  // log_ 与 mem_ 对应, 任何一个 write batch 在应用到 mem 之前都会写入 log 中.
  WritableFile* logfile_;
  log::Writer* log_;
  // QA: log_number 干什么吃的?
  // A: log file 对应的 log number.
  uint64_t log_number_;
  SnapshotList snapshots_;

  // Set of table files to protect from deletion because they are
  // part of ongoing compactions. 其中存放的是 file number, 我本来以为是 file fd 呢==
  std::set<uint64_t> pending_outputs_;

  /*
   * 按我理解 leveldb 在 schedule bg compaction 之后将 bg_compaction_scheduled_ 置为 True.
   * bg compaction 的实现可能如下:
   *    func bg_compaction() {
   *        mutex_.lock()
   *        compacting_ = True;
   *        mutex_.unlock()
   *        do_compaction(); // 这个期间可能不会持有着锁.
   *        mutex_.lock()
   *        compacting_ = False;
   *        mutex_.unlock()
   *        bg_compaction_scheduled_ = False;
   *    }
   */
  // Has a background compaction been scheduled or is running?
  bool bg_compaction_scheduled_;

  // Is there a compaction running?
  /* 按我理解存在 bg_compaction_scheduled_ 为 false, 同时 compacting_ 为 true 的情况, 也即 compact 可能会
   * 被自发地运行. 但是结合了对 DBImpl::~DBImpl 的注释理解之后, 我觉得 compacting_ 的更新总是按照如下的流程:
   *    bg_compaction_scheduled_ = true;
   *    compacting_ = true;
   *    compacting_ = false;
   *    bg_compaction_scheduled_ = false;
   * 目测这个变量就是为了测试引入的, 因为我 grep 了一下正统代码里面没有使用过 compacting_.
   */
  bool compacting_;

  /* 任何时刻只要对 mutex_ 加锁成功, 那么当前 versions_->current() + mem_ 就存放着当前 leveldb 数据库的全部
   * 数据.
   */
  VersionSet* versions_;

  // Have we encountered a background error in paranoid mode?
  Status bg_error_;

  // No copying allowed
  DBImpl(const DBImpl&);
  void operator=(const DBImpl&);

  const Comparator* user_comparator() const {
    return internal_comparator_.user_comparator();
  }
};

// Sanitize db options.  The caller should delete result.info_log if
// it is not equal to src.info_log.
extern Options SanitizeOptions(const std::string& db,
                               const InternalKeyComparator* icmp,
                               const Options& src);

}

#endif  // STORAGE_LEVELDB_DB_DB_IMPL_H_


text:
Source code of writings.io.

writings.io will be close at 2013-12-31, and this project will no longer be maintained.

![writings](https://raw.github.com/chloerei/writings/master/app/assets/images/writings-io-manager.png)

## Introduction

Writings is a multi-user blog platform. It provides a clear dashboard and online WYCIWYG editor.

The project is base on Rails 4.0 and Ruby 2.0, require this component:

- Mongodb for database.
- Memcached for caching.
- Redis && Sidekiq for delay jobs.
- Pandoc for markdown export.

## Installation

- [Ubuntu 12.04 (recommend)](doc/INSTALL-ubuntu.md)

## License

The MIT License.


text:
<input type="hidden" id="userid" value="<?php echo $userinfo->id?>" />
Username
<input type="text" id="username" value="<?php echo $userinfo->username ?>">
Email
<input type="email" id="email" value="<?php echo $userinfo->email ?>" />
JoinDate
<input type="text" id="date" value="<?php echo $userinfo->join_date ?>" />
Ban
<input type="checkbox" id="ban" <?php echo ($userinfo->ban==1) ? "checked":"" ?> />


text:
using System;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Threading.Tasks;
using Xunit;

namespace DevExtreme.AspNet.Data.Tests.EFCore {

    public class Bug499 {

        [Table(nameof(Bug499) + "_" + nameof(Entity))]
        public class Entity {
            public int ID { get; set; }
            public DayOfWeek Day { get; set; }
            public DayOfWeek? NullableDay { get; set; }
        }

        [Fact]
        public async Task Scenario() {
            await TestDbContext.ExecAsync(context => {
                var dbSet = context.Set<Entity>();

                var entity1 = new Entity {
                    Day = DayOfWeek.Monday,
                    NullableDay = DayOfWeek.Monday,
                };

                var entity6 = new Entity {
                    Day = DayOfWeek.Saturday,
                    NullableDay = DayOfWeek.Saturday,
                };

                dbSet.AddRange(entity1, entity6);
                context.SaveChanges();

                var loadOptions = new SampleLoadOptions {
                    Filter = new[] {
                        new object[] { "Day", ">=", 1 },
                        new object[] { "Day", "<", "saturday" },
                        new object[] { "NullableDay", ">=", DayOfWeek.Monday },
                        new object[] { "NullableDay", "<", "saturday" },
                    }
                };

                var loadResult = DataSourceLoader.Load(dbSet, loadOptions);

                Assert.Equal(
                    new[] { entity1 },
                    loadResult.data
                );
            });
        }

    }
}


text:
<?php defined('BX_DOL') or die('hack attempt');

class BxBaseStudioMenu extends BxDolStudioMenu
{
    protected $_bInlineIcons;

    public function __construct ($aObject, $oTemplate)
    {
        parent::__construct ($aObject, $oTemplate);

        $this->_bInlineIcons = in_array($this->_aObject['template'], array(
            'menu_side.html',
            'menu_top_toolbar.html',
            'menu_launcher_browser.html',
            'page_breadcrumb.html'
        ));
    }

    public function setInlineIcons($bInlineIcons)
    {
        $this->_bInlineIcons = $bInlineIcons;
    }

    protected function _getMenuItem ($aItem)
    {
        $aItem = parent::_getMenuItem($aItem);
        if($aItem === false)
            return $aItem;

        $aItem['class'] = isset($aItem['class']) ? $aItem['class'] : '';
        if($this->_bInlineIcons && $aItem['bx_if:image']['condition'] && strpos($aItem['bx_if:image']['content']['icon_url'], '.svg') !== false)
            $aItem = array_merge($aItem, array(
                'bx_if:image' => array (
                    'condition' => false,
                    'content' => array(),
                ),
                'bx_if:image_inline' => array (
                    'condition' => true,
                    'content' => array(
                        'image' => bx_file_get_contents($aItem['bx_if:image']['content']['icon_url'])
                    ),
                ),
            ));

        return $aItem;
    }

    /**
     * Check if menu items is selected.
     * @param $a menu item array
     * @return boolean
     */
    protected function _isSelected ($a)
    {
        return isset($a['selected']) && $a['selected'] === true;
    }
}

/** @} */


text:
ACCEPTED

#### According to
Index Fungorum

#### Published in
null

#### Original name
Lasiosphaeria crinita var. crinita

### Remarks
null