text:
An asynchronous ElasticSearch client for Clojure.

Currently under development.  Warning: more APIs have been implemented than tested at this stage.

[![Clojars Project](http://clojars.org/clj-es/latest-version.svg)](http://clojars.org/clj-es)

Tested with ElasticSearch 1.6.

[![Build Status](https://travis-ci.org/benashford/clj-es.svg?branch=master)](https://travis-ci.org/benashford/clj-es)

## Overview

This project was intended to complement my [asynchronous Redis client](https://github.com/benashford/redis-async), and to contrast my [ElasticSearch client for Rust](https://github.com/benashford/rs-es).

The goal is to provide a very lightweight client that doesn't hide or obscure any of the advanced features of ElasticSearch, and to have a direct mapping to the raw APIs so that users familiar with the ElasticSearch APIs will be able to use this client directly.

`clj-es.client` contains one function per API.  The first parameter is always the "client" (a map containing hostname and/or port, these will default to `localhost` and `9200` if not set), the next parameters correspond to the path elements of each ES call.  The final (optional) parameter, is the body (e.g. the document or query). For example:

```clojure
(index es-client "index-name" "doc-type" document)
```

Will translate as a POST to `http://es:9200/index-name/doc-type` with the document as the body.

Other parameters that are sent as query parameters, e.g. routing and version fields, are set using `with-params`:

```clojure
(with-params {:version 5}
  (index es-client "index-name" "doc-type" id document))
```

### Queries

Many ElasticSearch operations take use queries.  These are either in the form of a [URI query parameter](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-uri-request.html) or in the body (along side other arguments) in the form of the [query DSL](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html).

Functions that use queries support both of these options.  If a `String` is provided, it will be used as a URI search; otherwise it is assumed to be a request body that will contain a query.

### Multi-index, multi-type

Many ElasticSearch operations can be applied to multiple indexes and multiple types.  For these operations either a `String`, representing a single index/type; or a sequence or vector of `String`s, representing multiple indexes/types, can be provided.

## APIs supported

### Document APIs

#### `index`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-index_.html

#### `get`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-get.html

#### `delete`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete.html

#### `update`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update.html

#### `multi-get`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-multi-get.html

#### `bulk`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html

#### `delete-by-query`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete-by-query.html

Please note, this is scheduled to be removed in ElasticSearch 2.0

#### `termvectors`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-termvectors.html

#### `multi-termvectors`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-multi-termvectors.html

### Search APIs

#### `search`

Supports both search by URI: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-uri-request.html, and search by query body: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-body.html.

Because this is a thin layer, anything that can be expressed via a request-body search is supported here - including aggregations and scan/scroll operations.

#### `template-search`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-template.html

Templates can be got and set using `search-template`

#### `search-shards`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-shards.html

#### `suggest`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-suggesters.html

#### `multi-search`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-multi-search.html

#### `count`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-count.html

#### `search-exists`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-exists.html

#### `validate`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-validate.html

#### `explain`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-explain.html

#### `percolate`, `percolate-count`, and `multi-percolate`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-percolate.html

#### `more-like-this`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-more-like-this.html

### Index APIs

#### `create-index`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-create-index.html

#### `delete-index`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-delete-index.html

#### `get-index`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-get-index.html

#### `index-exists`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-exists.html

#### `open-index` and `close-index`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-open-close.html

#### `put-mapping`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-put-mapping.html

#### `get-mapping`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-get-mapping.html and https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-get-field-mapping.html

#### `type-exists`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-types-exists.html

#### `delete-mapping`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-delete-mapping.html

#### `aliases`, `add-alias`, `delete-alias` and `get-alias`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-aliases.html

#### `update-settings`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-update-settings.html

#### `get-settings`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-get-settings.html

#### `analyze`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-analyze.html

#### `put-template`, `delete-template`, `get-template` and `template-exists`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-templates.html

#### `put-warmer`, `delete-warmer` and `get-warmer`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-warmers.html

#### `index-stats`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-stats.html

#### `index-segments`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-segments.html

#### `index-recovery`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-recovery.html

#### `clear-cache`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-clearcache.html

#### `flush`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-flush.html

#### `refresh`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-refresh.html

#### `optimize`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-optimize.html

#### `upgrade`

See: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-upgrade.html

### Cat APIs

Not yet supported

### Cluster APIs

Not yet supported

## Implementation details

A pool of persistent HTTP connections are used, with a default keepalive value of 30 seconds.

## Why not use...

TBC: compare with existing clients

## TODO

1. Implementation of Field stats API (https://www.elastic.co/guide/en/elasticsearch/reference/current/search-more-like-this.html)
2. Helper functions for scan/scroll

## License

```
Copyright 2015 Ben Ashford

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.
```


text:
'use strict';
/* global angular, jasmine, describe, it, expect, module, inject, beforeEach, convertDateStringToDateObject, convertAllDateStringProperties */

describe('The utils module', function(){
    var httpProvider;
    beforeEach( module('utils', function($httpProvider) {
        httpProvider = $httpProvider;
    }));

    it('has these requirements', function() {
        var utils = angular.module('utils');
        expect(utils.requires.length).toBe(0);
    });

    it('adds a function to the $httpProvider defaults for the transformResponse', inject( function( ) {
        expect(httpProvider.defaults.transformResponse.length).toBe(2);
    }));

});

describe('The convertDateStringToDateObject', function(){
    beforeEach( module('utils'));

    it('returns false for arguments of type different than String', function() {
        expect( convertDateStringToDateObject ).toBeDefined();
        expect( convertDateStringToDateObject(true) ).toBeFalsy();
        expect( convertDateStringToDateObject(false) ).toBeFalsy();
        expect( convertDateStringToDateObject({}) ).toBeFalsy();
        expect( convertDateStringToDateObject([]) ).toBeFalsy();
        expect( convertDateStringToDateObject(1) ).toBeFalsy();
    });

    it('returns false for string arguments not formatted as expected', function() {
        expect( convertDateStringToDateObject('true') ).toBeFalsy();
        expect( convertDateStringToDateObject('44/44/44') ).toBeFalsy();
        expect( convertDateStringToDateObject('2000-20-10T09:09:09') ).toBeFalsy();
    });
    it('returns a date object for string arguments formatted as expected', function() {
        expect( convertDateStringToDateObject('2015-08-15T09:09:09') ).toBeTruthy();
        expect( convertDateStringToDateObject('2015-08-15T09:09:09.300Z') ).toBeTruthy();
    });
});

describe('The convertAllDateStringProperties', function(){
    beforeEach( module('utils'));

    it('returns the given argument for arguments of type different than Object', function() {
        expect( convertAllDateStringProperties ).toBeDefined();
        expect( convertAllDateStringProperties(true) ).toBe( true);
        expect( convertAllDateStringProperties(false) ).toBe( false);
        var val = 'dfzdff';
        expect( convertAllDateStringProperties(val) ).toBe(val);
        val = [];
        expect( convertAllDateStringProperties(val) ).toBe(val);
        expect( convertAllDateStringProperties(1) ).toBe(1);
    });

    it('returns the given Object with all datestring converted to date Objects', function() {
        var obj = {
            name:'aName',
            birth:'1974-08-15T09:00:00',
            child : {
                name:'aChild',
                birth:'2016-08-15T09:00:00'
            }
        };
        var result = convertAllDateStringProperties(obj);
        expect( result ).toBe(obj);
        expect( result.name ).toEqual('aName');
        expect( result.birth ).toEqual( new Date(1974,7,15,6,0,0) );
        expect( result.child.name ).toEqual('aChild');
        expect( result.child.birth ).toEqual( new Date(2016,7,15,6,0,0) );
    });

    it('returns the given argument for arguments of type Object with no owned properties', function() {
        var val = new Date();
        expect( convertAllDateStringProperties(val) ).toBe(val);
    });

});

describe('The DaysDiff Date prototype augmentations', function(){
    beforeEach( module('utils'));

    it('returns undefined if no date is given', function() {
        var now = new Date();
        var d1;
        expect( now.daysDiff ).toBeDefined();
        expect( now.daysDiff( d1) ).not.toBeDefined();
    });
    it('returns the number of days between this date and the given date', function() {
        var now = new Date();
        var d1 = new Date( now.getTime() + 3 * Date.DAY);
        expect( now.daysDiff( d1) ).toBe(-3);
        d1 = new Date( now.getTime() - 3 * Date.DAY);
        expect( now.daysDiff( d1) ).toBe(3);
        d1 = new Date( now.getTime() - 60 * Date.DAY);
        expect( now.daysDiff( d1) ).toBe(60);
    });

});

describe('The minutesDiff Date prototype augmentations', function(){
    beforeEach( module('utils'));

    it('returns undefined if no date is given', function() {
        var now = new Date();
        var d1;
        expect( now.minutesDiff ).toBeDefined();
        expect( now.minutesDiff( d1) ).not.toBeDefined();
    });
    it('returns the number of minutes between this date and the given date', function() {
        var now = new Date();
        var d1 = new Date( now.getTime() + 3 * Date.HOUR);
        expect( now.minutesDiff( d1) ).toBe(-180);
        d1 = new Date( now.getTime() - 3 * Date.HOUR);
        expect( now.minutesDiff( d1) ).toBe(180);
        d1 = new Date( now.getTime() - 30 * Date.HOUR);
        expect( now.minutesDiff( d1) ).toBe(1800);
    });

});

describe('The plusDays Date prototype augmentations', function(){
    beforeEach( module('utils'));

    it('returns a new Date object with this dates date plus the given number of days', function() {
        var now = new Date();
        expect( now.plusDays ).toBeDefined();

        var d1 = now.plusDays(3);
        expect( now.daysDiff( d1) ).toBe(-3);
        d1 = d1.plusDays(-3);
        expect( now.daysDiff( d1) ).toBe(0);
    });
});

describe('The plusMinutes Date prototype augmentations', function(){
    beforeEach( module('utils'));

    it('returns a new Date object with this dates date plus the given number of minutes', function() {
        var now = new Date();
        expect( now.plusMinutes ).toBeDefined();

        var d1 = now.plusMinutes(3);
        expect( now.minutesDiff( d1) ).toBe(-3);
        d1 = d1.plusMinutes(-3);
        expect( now.minutesDiff( d1) ).toBe(0);
    });
});
describe('The sameDayAt Date prototype augmentations', function(){
    beforeEach( module('utils'));

    it('returns a new Date object with this dates date but at the given time', function() {
        var now = new Date();
        expect( now.sameDayAt ).toBeDefined();

        var d1 = now.sameDayAt(11,10,9,8);
        var d2 = now.sameDayAt(0,0,0,0);
        expect( now.daysDiff( d1) ).toBe(0);
        expect( d1.getTime() - d2.getTime() ).toBe( 11*Date.HOUR + 10*Date.MINUTE + 9000 + 8);
    });
});

describe('The getWeekdayLabel Date prototype augmentations', function(){
    beforeEach( module('utils'));

    it('returns the string representing the name of the weekday for this date', function() {
        var now = new Date(2015, 2, 5);
        expect( now.getWeekdayLabel ).toBeDefined();

        var d1 = now.getWeekdayLabel();
        expect( d1 ).toBe(Date.weekdayLabels[4]);
    });
});

describe('The getMonthLabel Date prototype augmentations', function(){
    beforeEach( module('utils'));

    it('returns the string representing the name of the month for this date', function() {
        var now = new Date(2015, 1, 5);
        expect( now.getMonthLabel ).toBeDefined();

        var d1 = now.getMonthLabel();
        expect( d1 ).toBe(Date.monthNames[1]);
    });
});

redpajama_set_name: RedPajamaGithub


text:
import PropTypes from 'prop-types';
import React from 'react';

const localStyles = {
  wrapper: {
    backfaceVisibility: 'hidden',
    position: 'absolute',
    top: 0,
    left: 0,
    zIndex: 2,
    transform: 'rotateY(0deg)',
    width: '100%',
  },
  inputWrapper: {
    display: 'flex',
    flexFlow: 'row wrap',
    justifyContent: 'center',
    alignItems: 'center',
  },
  buttonsWrapper: {
    display: 'flex',
    flexFlow: 'row wrap',
    justifyContent: 'center',
    alignItems: 'center',
  },
  input: {
    width: 344,
    height: 40,
    margin: '15px 0',
  },
  recoverPasswordWrapper: {
    width: '100%',
    display: 'flex',
    flexFlow: 'row wrap',
    justifyContent: 'center',
    alignItems: 'center',
  },
  recoverPassword: {
    textAlign: 'center',
    cursor: 'pointer',
    margin: '20px 0',
    padding: 15,
  },
  button: {
    margin: '0 15px',
    padding: 15,
  },
};

const Login = ({
  handleShowSignup,
  handleShowRecover,
  styles,
  handleLogin,
  handleChange,
  username,
  password,
  usernameCustomLabel,
  passwordCustomLabel,
  recoverPasswordCustomLabel,
  goToSignupCustomLabel,
  submitLoginCustomLabel,
}) => (

      <input
        style={Object.assign({}, localStyles.input, styles.input)}
        type="text"
        id="username"
        name="username"
        placeholder={usernameCustomLabel}
        onChange={e => handleChange(e.target.name, e.target.value)}
        value={username}
      />
      <input
        style={Object.assign({}, localStyles.input, styles.input)}
        type="password"
        id="password"
        name="password"
        placeholder={passwordCustomLabel}
        onChange={e => handleChange(e.target.name, e.target.value)}
        value={password}
      />

        <button
          id="recorver-password"
          type="button"
          style={Object.assign({}, localStyles.recoverPassword, styles.recoverPasswordButton)}
          onClick={() => {
            handleShowRecover('isRecoveringPassword', true);
          }}
        >
          {recoverPasswordCustomLabel}
        </button>

      <button
        id="signup-button"
        type="button"
        style={Object.assign({}, localStyles.button, styles.button)}
        onClick={() => {
          handleShowSignup('isLogin', false);
        }}
      >
        {goToSignupCustomLabel}
      </button>
      <input
        id="submit-login"
        name="submit-login"
        value={submitLoginCustomLabel}
        type="submit"
        style={Object.assign({}, localStyles.button, styles.button)}
        onClick={handleLogin}
      />

);

Login.propTypes = {
  handleShowSignup: PropTypes.func.isRequired,
  handleShowRecover: PropTypes.func.isRequired,
  handleLogin: PropTypes.func.isRequired,
  handleChange: PropTypes.func.isRequired,
  username: PropTypes.string.isRequired,
  password: PropTypes.string.isRequired,
  styles: PropTypes.shape({
    wrapper: PropTypes.object,
    inputWrapper: PropTypes.object,
    buttonsWrapper: PropTypes.object,
    input: PropTypes.object,
    recoverPasswordWrapper: PropTypes.object,
    recoverPasswordButton: PropTypes.object,
    button: PropTypes.object,
  }),
  usernameCustomLabel: PropTypes.string.isRequired,
  passwordCustomLabel: PropTypes.string.isRequired,
  recoverPasswordCustomLabel: PropTypes.string.isRequired,
  goToSignupCustomLabel: PropTypes.string.isRequired,
  submitLoginCustomLabel: PropTypes.string.isRequired,
};

Login.defaultProps = {
  styles: {},
};

export default Login;


text:
/**
 * Created by hisham.javed on 1/12/15.
 */

Layer_MainMenu_BG = cc.Layer.extend({
    _className:"Layer_MainMenu_BG",
    sprite:null,
    ctor:function () {
        //////////////////////////////
        // 1. super init first
        this._super();

        /////////////////////////////
        // window size
        var size = cc.winSize;
        this.drawBg(size);
        this.drawMenu(size);
        return true;
    },
    drawBg:function(size){
        var sprite = new cc.Sprite(res.splash450X800);
        sprite.attr({
            x: 0,
            y: 0,
            anchorX: 0,
            anchorY: 0
        });
        this.addChild(sprite);
    },
    drawMenu:function(size){
        //5.
        cc.MenuItemFont.setFontSize(60);

        //6.create a menu and assign onPlay event callback to it
        var menuItemPlay = new cc.MenuItemSprite(
            new cc.Sprite(res.btnPlayUp), // normal state image
            new cc.Sprite(res.btnPlayDown), // select state image
            this.onPlay, this);
        var menu = new cc.Menu(menuItemPlay);  //7. create the menu
        menu.setPosition(cc.p(size.width/2,size.height/2-250));
        this.addChild(menu);
    },
    onPlay : function(){
        var scene = new scenes.Stage1();
        cc.director.pushScene(scene);
    }
});


text:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- "Fragment A" -->
    <fragment
        class="com.Martin.MapCalibrator.fragments.MapDetailsFragment"
        android:name="com.Martin.MapCalibrator.fragments.MapDetailsFragment"
        android:id="@+id/mapDetailsFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
</FrameLayout><!-- From: file:/C:/Users/semmes/Android-ws/MapCalibrator-master/app/src/main/res/layout/map_details_activity.xml -->


text:
// Copyright (c) 2008-2022, Hazelcast, Inc. All Rights Reserved.
//
// 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.

using Microsoft.Extensions.Logging;

namespace Hazelcast.Examples
{
    // ReSharper disable once UnusedMember.Global
    public class LoggingExample
    {
        // run this example with
        // ./hz.ps1 run-example Logging
        // ./hz.ps1 run-example Logging --- --Logging:LogLevel:Hazelcast.Examples.LoggingExample.A=Debug
        //
        // note that options set with the With(...) method of the HazelcastOptionsBuilder take precedence
        // over everything, including command-line and environment variable options.

        public static void Main(string[] args)
        {
            var options = new HazelcastOptionsBuilder()
                .With(args)
                .WithConsoleLogger()
                .With("Logging:LogLevel:Hazelcast.Examples.LoggingExample.B", "Warning")
                .Build();

            var loggerFactory = options.LoggerFactory.Service;

            var loggerA = loggerFactory.CreateLogger<A>();

            loggerA.LogDebug("This is a DEBUG message from Hazelcast.Examples.LoggingExamples.A");
            loggerA.LogInformation("This is an INFO message from Hazelcast.Examples.LoggingExamples.A");
            loggerA.LogWarning("This is a WARNING message from Hazelcast.Examples.LoggingExamples.A");

            var loggerB = loggerFactory.CreateLogger<B>();

            loggerB.LogDebug("This is a DEBUG message from Hazelcast.Examples.LoggingExamples.B");
            loggerB.LogInformation("This is an INFO message from Hazelcast.Examples.LoggingExamples.B");
            loggerB.LogWarning("This is a WARNING message from Hazelcast.Examples.LoggingExamples.B");

            // flush logs!
            loggerFactory.Dispose();
        }

        public class A
        { }

        public class B
        { }
    }
}


text:
<?php
/*
 * LMT/Registration/Team.php
 * LHS Math Club Website
 */

require_once '../../.lib/lmt-functions.php';
lmt_reg_restrict_access('L');

if (isSet($_POST['lmt_do_reg_add']))
	do_add();
else if (isSet($_POST['lmt_do_reg_edit_name']))
	do_edit_name();
else if (isSet($_POST['lmt_do_reg_delete']))
	do_delete();
else if (isSet($_POST['lmt_do_reg_add_member']))
	do_add_member();
else if (isSet($_POST['lmt_do_reg_edit_member']))
	do_edit_member();
else if (isSet($_GET['Add']))
	show_add_page('', 'team_name');
else if (isSet($_GET['Edit']))
	show_edit_page('', "document.forms['lmtRegAddMember'].member_name.focus();");
else if (isSet($_GET['Delete']))
	show_delete_page();
else if (isSet($_GET['EditMember']))
	show_edit_member_page('');
else if (isSet($_GET['DeleteMember']))
	do_delete_member();
else
	header('Location: Home');

function show_add_page($err, $selected_field) {
	global $team_name, $members;

	$c = DB::queryFirstField('SELECT COUNT(*) FROM teams WHERE school=%i', $_SESSION['LMT_user_id']);
	$cancel_link = '';
	if ($c != 0)
		$cancel_link = "\n               Cancel";

	if ($err != '')
		$err = "\n
$err

\n";

	$lmt_cost = htmlentities(map_value('team_cost'));
	$school_name = htmlentities($_SESSION['LMT_school_name']);

	lmt_page_header('Add Team');
	echo <<<HEREDOC

Add a Team

      Team registration costs $lmt_cost, paid at the competition.

      Please read the rules before registering teams. Though LMT is open to teams of 4, 5, or 6 competitors,
      we stress that a full team is one of 6 students. The option for smaller teams is intended for schools
      who may not be able to field full teams, but still have significant interest in the competition, or in
      case unexpected conflicts arise for individual members come competition day. Forming smaller teams is
	  otherwise strongly discouraged.

      You may add, remove and edit teams until registration closes.

      $err
      <form id="lmtRegAddTeam" method="post" action="{$_SERVER['REQUEST_URI']}">

            School:
            $school_name

            Team Name:

              <input type="text" name="team_name" size="25" maxlength="25" value="$team_name" />

            Members:
            Name
            Grade

            <input type="text" name="name1" size="25" maxlength="25" value="{$members[1]['name']}" />

              <select name="grade1">
                <option value="6"{$members[1]['6sel']}>Sixth</option>
                <option value="7"{$members[1]['7sel']}>Seventh</option>
                <option value="8"{$members[1]['8sel']}>Eighth</option>
              </select>

            <input type="text" name="name2" size="25" maxlength="25" value="{$members[2]['name']}" />

              <select name="grade2">
                <option value="6"{$members[2]['6sel']}>Sixth</option>
                <option value="7"{$members[2]['7sel']}>Seventh</option>
                <option value="8"{$members[2]['8sel']}>Eighth</option>
              </select>

            <input type="text" name="name3" size="25" maxlength="25" value="{$members[3]['name']}" />

              <select name="grade3">
                <option value="6"{$members[3]['6sel']}>Sixth</option>
                <option value="7"{$members[3]['7sel']}>Seventh</option>
                <option value="8"{$members[3]['8sel']}>Eighth</option>
              </select>

            <input type="text" name="name4" size="25" maxlength="25" value="{$members[4]['name']}" />

              <select name="grade4">
                <option value="6"{$members[4]['6sel']}>Sixth</option>
                <option value="7"{$members[4]['7sel']}>Seventh</option>
                <option value="8"{$members[4]['8sel']}>Eighth</option>
              </select>

            <input type="text" name="name5" size="25" maxlength="25" value="{$members[5]['name']}" />

              <select name="grade5">
                <option value="6"{$members[5]['6sel']}>Sixth</option>
                <option value="7"{$members[5]['7sel']}>Seventh</option>
                <option value="8"{$members[5]['8sel']}>Eighth</option>
              </select>

            <input type="text" name="name6" size="25" maxlength="25" value="{$members[6]['name']}" />

              <select name="grade6">
                <option value="6"{$members[6]['6sel']}>Sixth</option>
                <option value="7"{$members[6]['7sel']}>Seventh</option>
                <option value="8"{$members[6]['8sel']}>Eighth</option>
              </select>

              <input type="hidden" name="xsrf_token" value="{$_SESSION['xsrf_token']}" />
              <input type="submit" name="lmt_do_reg_add" value="Add This Team" />$cancel_link

      </form>
HEREDOC;
	die;
}

function do_add() {
	if ($_POST['xsrf_token'] != $_SESSION['xsrf_token'])
		trigger_error('XSRF code incorrect', E_USER_ERROR);

	global $team_name, $members;

	$team_name = htmlentities(trim($_POST['team_name']));

	$name_msg = validate_team_name($team_name);
	if ($name_msg !== true)
		show_add_page($name_msg, 'team_name');

	$member_name_msg = true;
	$member_grade_msg = true;

	for ($i = 1; $i <= 6; $i++) {
		$members[$i]['name'] = htmlentities(ucwords(trim($_POST['name' . $i])));

		if ($members[$i]['name'] == '')
			$members[$i]['exists'] = false;
		else {
			$members[$i]['exists'] = true;

			$name_msg = validate_member_name($members[$i]['name']);
			if ($name_msg !== true) {
				$member_name_msg = $name_msg;
				$member_name_msg_field = 'name' . $i;
			}

			if ($_POST['grade' . $i] == '6') {
				$members[$i]['grade'] = 6;
				$members[$i]['6sel'] = ' selected="selected"';
			}
			else if ($_POST['grade' . $i] == '7') {
				$members[$i]['grade'] = 7;
				$members[$i]['7sel'] = ' selected="selected"';
			}
			else if ($_POST['grade' . $i] == '8') {
				$members[$i]['grade'] = 8;
				$members[$i]['8sel'] = ' selected="selected"';
			}
			else {
				$member_grade_msg = 'That\'s not a valid grade';
				$member_grade_msg_field =  'grade' . $i;
			}
		}
	}

	if ($member_name_msg !== true)
		show_add_page($member_name_msg, $member_name_msg_field);
	if ($member_grade_msg !== true)
		show_add_page($member_grade_msg, $member_grade_msg_field);

	$c = DB::queryFirstField('SELECT COUNT(*) FROM teams WHERE name=%s AND school=%i', $team_name,$_SESSION['LMT_user_id']);
	if ($c > 0)
		show_add_page('You already have a team with that name', 'team_name');

	// ** All information has been validated at this point **

	DB::insert('teams',array('name'=>$team_name,'school'=>$_SESSION['LMT_user_id']));
	$team_id = DB::insertId();

	for ($i = 1; $i <= 6; $i++)
		if ($members[$i]['exists'])
			DB::insert('individuals',array('name'=>$members[$i]['name'],'grade'=>$members[$i]['grade'],'team'=>$team_id));

	header('Location: Home');
}

function show_edit_page($err, $selected_field) {
	lmt_page_header('Modify Team');

	if ($err != '')alert($err,-1);

	$school_name = htmlentities($_SESSION['LMT_school_name']);

	$team_id = htmlentities($_GET['Edit']);
	$team_name = DB::queryFirstField('SELECT name FROM teams WHERE team_id=%i AND school=%i',$team_id,$_SESSION['LMT_user_id']);

	$members = lmt_db_table(	'SELECT id, name, grade FROM individuals WHERE team="'
								. mysqli_real_escape_string(DB::get(),$team_id) . '" ORDER BY name',
							array(	'name' => '',
									'grade' => ''),
							array(	'' => 'Team?EditMember={id}',
									'' => 'Team?DeleteMember={id}&xsrf_token=' . $_SESSION['xsrf_token']),
							'None',
							'contrasting');
	$num_members = (int)DB::queryFirstField('SELECT COUNT(*) FROM individuals WHERE team=%i',$team_id);

	if ($num_members < 4)alert('Warning: There are less than 4 members on this team!',-1);

	global $member_name, $member_grade;

	if ($num_members < 6)
		$add_member = <<<HEREDOC

          Add Member:

            <form id="lmtRegAddMember" method="post" action="{$_SERVER['REQUEST_URI']}">

              <input type="text" name="member_name" size="25" maxlength="25" value="$member_name" />
              <select name="member_grade" value="$member_grade">
                <option value="6">Sixth</option>
                <option value="7">Seventh</option>
                <option value="8">Eighth</option>
              </select>
              <input type="hidden" name="xsrf_token" value="{$_SESSION['xsrf_token']}" />
              <input type="submit" name="lmt_do_reg_add_member" value="Add" />

</form>

HEREDOC;

	echo <<<HEREDOC

Modify a Team

      ← Back to Team List

      $warning$err$change_alert

          School:
          $school_name

          Team Name:

            <form id="lmtRegEditTeam" method="post" action="{$_SERVER['REQUEST_URI']}">

              <input type="text" name="team_name" size="25" maxlength="25" value="$team_name" />
              <input type="hidden" name="xsrf_token" value="{$_SESSION['xsrf_token']}" />
              <input type="submit" name="lmt_do_reg_edit_name" value="Change Name" />

</form>

          Members:
          $members

$add_member

HEREDOC;
	die;
}

function do_edit_name() {
	if ($_POST['xsrf_token'] != $_SESSION['xsrf_token'])
		trigger_error('XSRF code incorrect', E_USER_ERROR);

	global $team_name;
	$team_name = htmlentities(trim($_POST['team_name']));

	$name_msg = validate_team_name($team_name);
	if ($name_msg !== true)
		show_edit_page($name_msg, "document.forms['lmtRegEditTeam'].team_name.focus();");

	$name = DB::queryFirstField('SELECT name FROM teams WHERE team_id=%i AND school=%i',$_GET['Edit'],$_SESSION['LMT_user_id']);
	if ($name == $team_name) {
		header('Location: Team?Edit=' . $_GET['Edit']);
		die;
	}

	$c = DB::queryFirstField('SELECT COUNT(*) FROM teams WHERE name=%s AND school=%i',$team_name,$_SESSION['LMT_user_id']);
	if ($c > 0)
		show_edit_page('You already have a team with that name', 'team_name');

	DB::update('teams',array('name'=>$team_name),'team_id=%i AND school=%i',$_GET['Edit'],$_SESSION['LMT_user_id']);

	alert('The team name has been changed',1);
	header('Location: Team?Edit=' . $_GET['Edit']);
}

function do_add_member() {
	if ($_POST['xsrf_token'] != $_SESSION['xsrf_token'])
		trigger_error('XSRF code incorrect', E_USER_ERROR);

	global $member_name, $member_grade;
	$member_name = htmlentities(ucwords(trim($_POST['member_name'])));
	$member_grade = htmlentities($_POST['member_grade']);

	$name_msg = validate_member_name($member_name);
	if ($name_msg !== true)
		show_edit_page($name_msg, "document.forms['lmtRegAddMember'].member_name.focus();");

	$grade_msg = validate_grade($member_grade);
	if ($grade_msg !== true)
		show_edit_page($grade_msg, "document.forms['lmtRegAddMember'].member_grade.focus();");

	// Ensure that the team exists and belongs to this user's school

	if(DB::queryFirstField('SELECT COUNT(*) FROM teams WHERE team_id=%i AND school=%i',$_GET['Edit'],$_SESSION['LMT_user_id'])==0)
		show_edit_page('Invalid team.');

	// ** All information has been validated at this point **

	DB::insert('individuals',array('name'=>$member_name,'grade'=>$member_grade,'team'=>$_GET['Edit']));

	header('Location: Team?Edit=' . $_GET['Edit']);
}

function show_edit_member_page($err) {
	lmt_page_header('Edit Member');

	$school_name = htmlentities($_SESSION['LMT_school_name']);

	$row = DB::queryFirstRow('SELECT name, grade, team FROM individuals WHERE id=%i',$_GET['EditMember']);
	$row2 = DB::queryFirstRow('SELECT name, school FROM teams WHERE team_id=%i',$row['team']);
	if ($row2['school'] != $_SESSION['LMT_user_id'])
		trigger_error('Edit Member: Member does not attend this school', E_USER_ERROR);

	$team_name = htmlentities($row2['name']);

	global $name, $grade;
	if (!isSet($name)) {
		$name = htmlentities($row['name']);
		$grade = $row['grade'];
	}

	$back_url = 'Team?Edit=' . htmlentities($row['team']);

	if ($err != '')alert($err,-1);

	echo <<<HEREDOC

Edit Member

      ← Back to Team Page

      $err
      <form id="lmtRegEditMember" method="post" action="{$_SERVER['REQUEST_URI']}">

            School:
            $school_name

            Team:
            $team_name

            Name:
            <input type="text" name="name" size="25" maxlength="25" value="$name" />

            Grade:

              <select name="grade" value="$grade">
                <option value="6">Sixth</option>
                <option value="7">Seventh</option>
                <option value="8">Eighth</option>
              </select>

              <input type="hidden" name="xsrf_token" value="{$_SESSION['xsrf_token']}" />
              <input type="submit" name="lmt_do_reg_edit_member" value="Update Information" />

      </form>
HEREDOC;
	die;
}

function do_edit_member() {
	if ($_POST['xsrf_token'] != $_SESSION['xsrf_token'])
		trigger_error('XSRF code incorrect', E_USER_ERROR);

	global $name, $grade;
	$name = htmlentities(ucwords(trim($_POST['name'])));
	$grade = htmlentities($_POST['grade']);

	$name_msg = validate_member_name($name);
	if ($name_msg !== true)
		show_edit_member_page($name_msg);

	$grade_msg = validate_grade($grade);
	if ($grade_msg !== true)
		show_edit_member_page($grade_msg);

	$team = DB::queryFirstField('SELECT team FROM individuals WHERE id=%i',$_GET['EditMember']);
	$school = DB::queryFirstField('SELECT school FROM teams WHERE team_id=%i',$team);
	if ($school != $_SESSION['LMT_user_id'])
		trigger_error('Edit Member: Member does not attend this school', E_USER_ERROR);

	// ** All information has been validated at this point **

	DB::update('individuals',array('name'=>$name,'grade'=>$grade),'id=%i',$_GET['EditMember']);

	header('Location: Team?Edit=' . $team);
}

function do_delete_member() {
	if ($_GET['xsrf_token'] != $_SESSION['xsrf_token'])
		header('Error' . $_GET['Edit']);

	$id = $_GET['DeleteMember'];

	$team = DB::queryFirstField('SELECT team FROM individuals WHERE id=%i',$id);
	$school = DB::queryFirstField('SELECT school FROM teams WHERE team_id=%i',$team);
	if ($school != $_SESSION['LMT_user_id'])
		trigger_error('Delete Member: Member does not attend this school', E_USER_ERROR);

	// ** All information has been validated at this point **

	DB::delete('individuals','id=%i',$id);

	header('Location: Team?Edit=' . $team);
}

function show_delete_page() {
	lmt_page_header('Remove Team');

	$team_name = htmlentities(DB::queryFirstField('SELECT name FROM teams WHERE team_id=%i AND school=%i',$_GET['Delete'],$_SESSION['LMT_user_id']));
	$school_name = htmlentities($_SESSION['LMT_school_name']);
	$members = lmt_db_table(	'SELECT name, grade FROM individuals WHERE team="'
								. mysqli_real_escape_string(DB::get(),$_GET['Delete']) . '" ORDER BY name',
							null,
							null,
							'None',
							'contrasting');

	echo <<<HEREDOC

Remove a Team

      <form method="post" action="{$_SERVER['REQUEST_URI']}">

          Are you sure that you want to remove this team?

          <input type="hidden" name="xsrf_token" value="{$_SESSION['xsrf_token']}" />
          <input type="submit" name="lmt_do_reg_delete" value="Remove" />
           Cancel

      </form>

          School:
          $school_name

          Team Name:
          $team_name

          Members:
          $members

HEREDOC;
	die;
}

function do_delete() {
	if ($_POST['xsrf_token'] != $_SESSION['xsrf_token'])
		trigger_error('XSRF code incorrect', E_USER_ERROR);

	// Ensure that the team exists and belongs to this user's school
	if(DB::queryFirstField('SELECT COUNT(*) FROM teams WHERE team_id=%i AND school=%i',$_GET['Delete'],$_SESSION['LMT_user_id'])==0)
		show_edit_page('Invalid team.');

	DB::delete('teams','team_id=%i',$_GET['Delete']);
	DB::delete('teams','individuals=%i',$_GET['Delete']);

	header('Location: Home');
}

?>


text:
package com.usst.app.order.price.priceAdjust.action;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;

import com.usst.app.component.serialNumber.service.SerialNumberService;
import com.usst.app.good.good.model.Good;
import com.usst.app.good.good.service.GoodService;
import com.usst.app.good.ware.model.Ware;
import com.usst.app.good.ware.service.WareService;
import com.usst.app.order.price.priceAdjust.model.PriceAdjust;
import com.usst.app.order.price.priceAdjust.model.PriceAdjustWare;
import com.usst.app.order.price.priceAdjust.service.PriceAdjustService;
import com.usst.app.order.price.priceAdjust.service.PriceAdjustWareService;
import com.usst.app.system.user.model.SysUser;
import com.usst.code.struct.BaseAction;
import com.usst.code.util.PageInfo;

public class PriceAdjustAction extends BaseAction {
	private static final long serialVersionUID = 1L;
	private static final Logger logger = Logger.getLogger(PriceAdjustAction.class);
	private PriceAdjust priceAdjust;
	private PriceAdjustService priceAdjustService;
	private SerialNumberService serialNumberService;
	private PriceAdjustWareService priceAdjustWareService;
	private GoodService goodService;
	private WareService wareService;
	private String[] wareIdArr;
	private String[] wareNameArr;
	private Double[] priceCurrentArr;
	private Double[] priceAdjustArr;

	public void setPriceAdjustService(PriceAdjustService priceAdjustService) {
		this.priceAdjustService = priceAdjustService;
	}

	public void setSerialNumberService(SerialNumberService serialNumberService) {
		this.serialNumberService = serialNumberService;
	}

	public void setPriceAdjustWareService(PriceAdjustWareService priceAdjustWareService) {
		this.priceAdjustWareService = priceAdjustWareService;
	}

	public void setGoodService(GoodService goodService) {
		this.goodService = goodService;
	}

	public void setWareService(WareService wareService) {
		this.wareService = wareService;
	}

	public String list() {
		return "list_priceAdjust";
	}

	public String listJson() {
		logger.info("start list priceAdjust");
		List<PriceAdjust> resultList = null;
		int totalRows = 0;
		try {
			PageInfo pageInfo = createPageInfo();
			if (this.priceAdjust == null) {
				this.priceAdjust = new PriceAdjust();
			}
			resultList = this.priceAdjustService.pageList(pageInfo, this.priceAdjust, true);
			totalRows = pageInfo.getCount();
		} catch (Exception e) {
			logger.error("error occur when list priceAdjust", e);
		}
		if (resultList == null) {
			resultList = new ArrayList();
		}
		this.jsonMap = new HashMap();
		this.jsonMap.put("total", Integer.valueOf(totalRows));
		this.jsonMap.put("rows", resultList);
		logger.info("finish list all priceAdjust");
		return "success";
	}

	public String edit() {
		SysUser loginMan = getSessionUserInfo();
		if (this.priceAdjust == null) {
			this.priceAdjust = new PriceAdjust();
		}
		if (StringUtils.isBlank(this.priceAdjust.getId())) {
			String prefix = "";
			String appType = "";
			if ("0".equals(this.priceAdjust.getType())) {
				prefix = "STJ";
				appType = "priceAdjust0";
			} else if ("1".equals(this.priceAdjust.getType())) {
				prefix = "CTJ";
				appType = "priceAdjust1";
			} else if ("2".equals(this.priceAdjust.getType())) {
				prefix = "BTJ";
				appType = "priceAdjust2";
			}
			try {
				String code = this.serialNumberService.getSerialNumberByDate(prefix, appType);
				this.priceAdjust.setCode(code);
			} catch (Exception e) {
				logger.error("error occur when get code", e);
			}
			initModel(true, this.priceAdjust, loginMan);
			this.priceAdjust.setAdjustState("0");
			this.priceAdjust.setHandlerId(loginMan.getId());
			this.priceAdjust.setHandlerName(loginMan.getName());
			this.priceAdjust.setDeptId(loginMan.getDeptId());
			this.priceAdjust.setDeptName(loginMan.getDeptName());
		} else {
			this.priceAdjust = ((PriceAdjust) this.priceAdjustService.getModel(this.priceAdjust.getId()));
			initModel(false, this.priceAdjust, loginMan);
		}
		return "edit_priceAdjust";
	}

	public void save() {
		logger.info("start save saleAdjustment");
		if (StringUtils.isBlank(this.priceAdjust.getId())) {
			String id = this.priceAdjustService.makeId();
			this.priceAdjust.setId(id);
			try {
				this.priceAdjustService.insert(this.priceAdjust);
			} catch (Exception e) {
				responseFlag(false);
				logger.error("error occur when insert priceAdjust", e);
			}
		} else {
			try {
				this.priceAdjustService.update(this.priceAdjust);
			} catch (Exception e) {
				responseFlag(false);
				logger.error("error occur when update priceAdjust", e);
			}
			try {
				this.priceAdjustWareService.deleteByOrderId(this.priceAdjust.getId());
			} catch (Exception e) {
				responseFlag(false);
				logger.error("error occur when delete priceAdjust ware", e);
			}
		}
		if ((this.wareIdArr != null) && (this.wareIdArr.length > 0)) {
			for (int i = 0; i < this.wareIdArr.length; i++) {
				PriceAdjustWare priceAdjustWare = new PriceAdjustWare();
				priceAdjustWare.setWareId(this.wareIdArr[i]);
				priceAdjustWare.setWareName(this.wareNameArr[i]);
				priceAdjustWare.setPriceCurrent(this.priceCurrentArr[i]);
				priceAdjustWare.setPriceAdjust(this.priceAdjustArr[i]);
				priceAdjustWare.setOrderId(this.priceAdjust.getId());
				priceAdjustWare.setSort(Integer.valueOf(i));
				try {
					this.priceAdjustWareService.insert(priceAdjustWare);
				} catch (Exception e) {
					responseFlag(false);
					logger.error("error occur when insert priceAdjustWare", e);
				}
				if ("1".equals(this.priceAdjust.getAdjustState())) {
					try {
						if ("2".equals(this.priceAdjust.getType())) {
							Good good = this.goodService.getGoodByWareId(this.wareIdArr[i]);
							this.goodService.updatePurchasePrice(good.getId(), this.priceAdjustArr[i]);
						} else {
							Double priceChange = Double.valueOf(
									this.priceAdjustArr[i].doubleValue() - this.priceCurrentArr[i].doubleValue());

							Ware ware = (Ware) this.wareService.getModel(this.wareIdArr[i]);
							List<Ware> wareList = this.wareService.getWareByGoodId(ware.getGoodId());
							int size = 0;
							if (wareList != null) {
								size = wareList.size();
							}
							if (size > 1) {
								Double priceDiscount = ware.getPriceDiscount();
								priceDiscount = Double.valueOf(priceDiscount.doubleValue() + priceChange.doubleValue());
								ware.setPriceDiscount(priceDiscount);
								this.wareService.update(ware);
							} else if (size == 1) {
								Good good = this.goodService.getGoodByWareId(this.wareIdArr[i]);
								Double price = good.getPrice();
								price = Double.valueOf(price.doubleValue() + priceChange.doubleValue());
								this.goodService.updatePrice(good.getId(), price);
							}
						}
					} catch (Exception e) {
						responseFlag(false);
						logger.error("error occur when update good price info", e);
					}
				}
			}
		}
		responseFlag(true);
	}

	public void delete() {
		if (this.priceAdjust == null) {
			this.priceAdjust = new PriceAdjust();
		}
		if (StringUtils.isNotBlank(this.priceAdjust.getId())) {
			try {
				this.priceAdjustWareService.deleteByOrderId(this.priceAdjust.getId());
			} catch (Exception e) {
				logger.error("error occur when delete priceAdjust ware", e);
			}
			try {
				this.priceAdjustService.delete(this.priceAdjust.getId());
			} catch (Exception e) {
				logger.error("error occur when delete priceAdjust", e);
			}
			responseFlag(true);
		}
	}

	public String[] getWareIdArr() {
		return this.wareIdArr;
	}

	public String[] getWareNameArr() {
		return this.wareNameArr;
	}

	public Double[] getPriceCurrentArr() {
		return this.priceCurrentArr;
	}

	public Double[] getPriceAdjustArr() {
		return this.priceAdjustArr;
	}

	public void setWareIdArr(String[] wareIdArr) {
		this.wareIdArr = wareIdArr;
	}

	public void setWareNameArr(String[] wareNameArr) {
		this.wareNameArr = wareNameArr;
	}

	public void setPriceCurrentArr(Double[] priceCurrentArr) {
		this.priceCurrentArr = priceCurrentArr;
	}

	public void setPriceAdjustArr(Double[] priceAdjustArr) {
		this.priceAdjustArr = priceAdjustArr;
	}

	public PriceAdjust getPriceAdjust() {
		return this.priceAdjust;
	}

	public void setPriceAdjust(PriceAdjust priceAdjust) {
		this.priceAdjust = priceAdjust;
	}
}


text:
package org.openapitools.vertxweb.server.model;

import java.util.Objects;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;

@JsonInclude(JsonInclude.Include.NON_NULL)
public class Label1   {

  private String propertyClass;

  public Label1 () {

  }

  public Label1 (String propertyClass) {
    this.propertyClass = propertyClass;
  }

  @JsonProperty("_class")
  public String getPropertyClass() {
    return propertyClass;
  }
  public void setPropertyClass(String propertyClass) {
    this.propertyClass = propertyClass;
  }

  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    Label1 label1 = (Label1) o;
    return Objects.equals(propertyClass, label1.propertyClass);
  }

  @Override
  public int hashCode() {
    return Objects.hash(propertyClass);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class Label1 {\n");

    sb.append("    propertyClass: ").append(toIndentedString(propertyClass)).append("\n");
    sb.append("}");
    return sb.toString();
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }
}


text:
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

namespace WPFFolderBrowser.Interop
{
	//wpffb used
	[ComImport (),
	Guid ( IIDGuid.IModalWindow ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IModalWindow
	{

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime ),
		PreserveSig]
		int Show ( [In] IntPtr parent );
	}

	// wpffb used
	[ComImport (),
	Guid ( IIDGuid.IFileDialog ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IFileDialog : IModalWindow
	{
		// Defined on IModalWindow - repeated here due to requirements of COM interop layer
		// --------------------------------------------------------------------------------
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime ),
		PreserveSig]
		new int Show ( [In] IntPtr parent );

		// IFileDialog-Specific interface members
		// --------------------------------------------------------------------------------
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetFileTypes ( [In] uint cFileTypes, [In] ref NativeMethods.COMDLG_FILTERSPEC rgFilterSpec );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetFileTypeIndex ( [In] uint iFileType );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetFileTypeIndex ( out uint piFileType );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void Advise ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialogEvents pfde, out uint pdwCookie );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void Unadvise ( [In] uint dwCookie );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetOptions ( [In] NativeMethods.FOS fos );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetOptions ( out NativeMethods.FOS pfos );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetDefaultFolder ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetFolder ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetFolder ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetCurrentSelection ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetFileName ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszName );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetFileName ( [MarshalAs ( UnmanagedType.LPWStr )] out string pszName );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetTitle ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszTitle );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetOkButtonLabel ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszText );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetFileNameLabel ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetResult ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddPlace ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi, NativeMethods.FDAP fdap );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetDefaultExtension ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszDefaultExtension );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void Close ( [MarshalAs ( UnmanagedType.Error )] int hr );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetClientGuid ( [In] ref Guid guid );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void ClearClientData ();

		// Not supported:  IShellItemFilter is not defined, converting to IntPtr
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetFilter ( [MarshalAs ( UnmanagedType.Interface )] IntPtr pFilter );
	}

	[ComImport (),
	Guid ( IIDGuid.IFileOpenDialog ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IFileOpenDialog : IFileDialog
	{
		// Defined on IModalWindow - repeated here due to requirements of COM interop layer
		// --------------------------------------------------------------------------------
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime ),
		PreserveSig]
		new int Show ( [In] IntPtr parent );

		// Defined on IFileDialog - repeated here due to requirements of COM interop layer
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileTypes ( [In] uint cFileTypes, [In] ref NativeMethods.COMDLG_FILTERSPEC rgFilterSpec );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileTypeIndex ( [In] uint iFileType );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetFileTypeIndex ( out uint piFileType );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void Advise ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialogEvents pfde, out uint pdwCookie );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void Unadvise ( [In] uint dwCookie );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetOptions ( [In] NativeMethods.FOS fos );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetOptions ( out NativeMethods.FOS pfos );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetDefaultFolder ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFolder ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetFolder ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetCurrentSelection ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileName ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszName );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetFileName ( [MarshalAs ( UnmanagedType.LPWStr )] out string pszName );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetTitle ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszTitle );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetOkButtonLabel ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszText );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileNameLabel ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetResult ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void AddPlace ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi, NativeMethods.FDAP fdap );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetDefaultExtension ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszDefaultExtension );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void Close ( [MarshalAs ( UnmanagedType.Error )] int hr );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetClientGuid ( [In] ref Guid guid );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void ClearClientData ();

		// Not supported:  IShellItemFilter is not defined, converting to IntPtr
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFilter ( [MarshalAs ( UnmanagedType.Interface )] IntPtr pFilter );

		// Defined by IFileOpenDialog
		// ---------------------------------------------------------------------------------
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetResults ( [MarshalAs ( UnmanagedType.Interface )] out IShellItemArray ppenum );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetSelectedItems ( [MarshalAs ( UnmanagedType.Interface )] out IShellItemArray ppsai );
	}

	[ComImport (),
	Guid ( IIDGuid.IFileSaveDialog ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IFileSaveDialog : IFileDialog
	{
		// Defined on IModalWindow - repeated here due to requirements of COM interop layer
		// --------------------------------------------------------------------------------
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime ),
		PreserveSig]
		new int Show ( [In] IntPtr parent );

		// Defined on IFileDialog - repeated here due to requirements of COM interop layer
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileTypes ( [In] uint cFileTypes, [In] ref NativeMethods.COMDLG_FILTERSPEC rgFilterSpec );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileTypeIndex ( [In] uint iFileType );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetFileTypeIndex ( out uint piFileType );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void Advise ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialogEvents pfde, out uint pdwCookie );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void Unadvise ( [In] uint dwCookie );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetOptions ( [In] NativeMethods.FOS fos );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetOptions ( out NativeMethods.FOS pfos );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetDefaultFolder ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFolder ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetFolder ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetCurrentSelection ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileName ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszName );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetFileName ( [MarshalAs ( UnmanagedType.LPWStr )] out string pszName );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetTitle ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszTitle );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetOkButtonLabel ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszText );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFileNameLabel ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void GetResult ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void AddPlace ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi, NativeMethods.FDAP fdap );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetDefaultExtension ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszDefaultExtension );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void Close ( [MarshalAs ( UnmanagedType.Error )] int hr );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetClientGuid ( [In] ref Guid guid );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void ClearClientData ();

		// Not supported:  IShellItemFilter is not defined, converting to IntPtr
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		new void SetFilter ( [MarshalAs ( UnmanagedType.Interface )] IntPtr pFilter );

		// Defined by IFileSaveDialog interface
		// -----------------------------------------------------------------------------------

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetSaveAsItem ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi );

		// Not currently supported: IPropertyStore
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetProperties ( [In, MarshalAs ( UnmanagedType.Interface )] IntPtr pStore );

		// Not currently supported: IPropertyDescriptionList
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetCollectedProperties ( [In, MarshalAs ( UnmanagedType.Interface )] IntPtr pList, [In] int fAppendDefault );

		// Not currently supported: IPropertyStore
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetProperties ( [MarshalAs ( UnmanagedType.Interface )] out IntPtr ppStore );

		// Not currently supported: IPropertyStore, IFileOperationProgressSink
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void ApplyProperties ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi, [In, MarshalAs ( UnmanagedType.Interface )] IntPtr pStore, [In, ComAliasName ( "ShellObjects.wireHWND" )] ref IntPtr hwnd, [In, MarshalAs ( UnmanagedType.Interface )] IntPtr pSink );
	}

	// wpffb used
	[ComImport,
	Guid ( IIDGuid.IFileDialogEvents ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IFileDialogEvents
	{
		// NOTE: some of these callbacks are cancelable - returning S_FALSE means that
		// the dialog should not proceed (e.g. with closing, changing folder); to
		// support this, we need to use the PreserveSig attribute to enable us to return
		// the proper HRESULT
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime ),
		PreserveSig]
		HRESULT OnFileOk ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialog pfd );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime ),
		PreserveSig]
		HRESULT OnFolderChanging ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialog pfd, [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psiFolder );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void OnFolderChange ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialog pfd );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void OnSelectionChange ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialog pfd );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void OnShareViolation ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialog pfd, [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi, out NativeMethods.FDE_SHAREVIOLATION_RESPONSE pResponse );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void OnTypeChange ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialog pfd );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void OnOverwrite ( [In, MarshalAs ( UnmanagedType.Interface )] IFileDialog pfd, [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi, out NativeMethods.FDE_OVERWRITE_RESPONSE pResponse );
	}

	// wpffb used
	[ComImport,
	Guid ( IIDGuid.IShellItem ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IShellItem
	{
		// Not supported: IBindCtx
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void BindToHandler ( [In, MarshalAs ( UnmanagedType.Interface )] IntPtr pbc, [In] ref Guid bhid, [In] ref Guid riid, out IntPtr ppv );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetParent ( [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetDisplayName ( [In] NativeMethods.SIGDN sigdnName, [MarshalAs ( UnmanagedType.LPWStr )] out string ppszName );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetAttributes ( [In] uint sfgaoMask, out uint psfgaoAttribs );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void Compare ( [In, MarshalAs ( UnmanagedType.Interface )] IShellItem psi, [In] uint hint, out int piOrder );
	}

	// wpffb used
	[ComImport,
	Guid ( IIDGuid.IShellItemArray ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IShellItemArray
	{
		// Not supported: IBindCtx
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void BindToHandler ( [In, MarshalAs ( UnmanagedType.Interface )] IntPtr pbc, [In] ref Guid rbhid, [In] ref Guid riid, out IntPtr ppvOut );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetPropertyStore ( [In] int Flags, [In] ref Guid riid, out IntPtr ppv );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetPropertyDescriptionList ( [In] ref NativeMethods.PROPERTYKEY keyType, [In] ref Guid riid, out IntPtr ppv );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetAttributes ( [In] NativeMethods.SIATTRIBFLAGS dwAttribFlags, [In] uint sfgaoMask, out uint psfgaoAttribs );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetCount ( out uint pdwNumItems );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetItemAt ( [In] uint dwIndex, [MarshalAs ( UnmanagedType.Interface )] out IShellItem ppsi );

		// Not supported: IEnumShellItems (will use GetCount and GetItemAt instead)
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void EnumItems ( [MarshalAs ( UnmanagedType.Interface )] out IntPtr ppenumShellItems );
	}

	[ComImport,
	Guid ( IIDGuid.IKnownFolder ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IKnownFolder
	{
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetId ( out Guid pkfid );

		// Not yet supported - adding to fill slot in vtable
		void spacer1 ();
		//[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
		//void GetCategory(out mbtagKF_CATEGORY pCategory);

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetShellItem ( [In] uint dwFlags, ref Guid riid, out IShellItem ppv );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetPath ( [In] uint dwFlags, [MarshalAs ( UnmanagedType.LPWStr )] out string ppszPath );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetPath ( [In] uint dwFlags, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszPath );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetLocation ( [In] uint dwFlags, [Out, ComAliasName ( "ShellObjects.wirePIDL" )] IntPtr ppidl );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetFolderType ( out Guid pftid );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetRedirectionCapabilities ( out uint pCapabilities );

		// Not yet supported - adding to fill slot in vtable
		void spacer2 ();
		//[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
		//void GetFolderDefinition(out tagKNOWNFOLDER_DEFINITION pKFD);
	}

	[ComImport,
	Guid ( IIDGuid.IKnownFolderManager ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IKnownFolderManager
	{
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void FolderIdFromCsidl ( [In] int nCsidl, out Guid pfid );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void FolderIdToCsidl ( [In] ref Guid rfid, out int pnCsidl );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetFolderIds ( [Out] IntPtr ppKFId, [In, Out] ref uint pCount );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetFolder ( [In] ref Guid rfid, [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetFolderByName ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszCanonicalName, [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void RegisterFolder ( [In] ref Guid rfid, [In] ref NativeMethods.KNOWNFOLDER_DEFINITION pKFD );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void UnregisterFolder ( [In] ref Guid rfid );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void FindFolderFromPath ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszPath, [In] NativeMethods.FFFP_MODE mode, [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void FindFolderFromIDList ( [In] IntPtr pidl, [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void Redirect ( [In] ref Guid rfid, [In] IntPtr hwnd, [In] uint Flags, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszTargetPath, [In] uint cFolders, [In] ref Guid pExclusion, [MarshalAs ( UnmanagedType.LPWStr )] out string ppszError );
	}

	[ComImport,
	Guid ( IIDGuid.IFileDialogCustomize ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IFileDialogCustomize
	{
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void EnableOpenDropDown ( [In] int dwIDCtl );

		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddMenu ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddPushButton ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddComboBox ( [In] int dwIDCtl );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddRadioButtonList ( [In] int dwIDCtl );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddCheckButton ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel, [In] bool bChecked );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddEditBox ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszText );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddSeparator ( [In] int dwIDCtl );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddText ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszText );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetControlLabel ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetControlState ( [In] int dwIDCtl, [Out] out NativeMethods.CDCONTROLSTATE pdwState );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetControlState ( [In] int dwIDCtl, [In] NativeMethods.CDCONTROLSTATE dwState );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetEditBoxText ( [In] int dwIDCtl, [Out] IntPtr ppszText );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetEditBoxText ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszText );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetCheckButtonState ( [In] int dwIDCtl, [Out] out bool pbChecked );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetCheckButtonState ( [In] int dwIDCtl, [In] bool bChecked );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void AddControlItem ( [In] int dwIDCtl, [In] int dwIDItem, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void RemoveControlItem ( [In] int dwIDCtl, [In] int dwIDItem );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void RemoveAllControlItems ( [In] int dwIDCtl );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetControlItemState ( [In] int dwIDCtl, [In] int dwIDItem, [Out] out NativeMethods.CDCONTROLSTATE pdwState );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetControlItemState ( [In] int dwIDCtl, [In] int dwIDItem, [In] NativeMethods.CDCONTROLSTATE dwState );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetSelectedControlItem ( [In] int dwIDCtl, [Out] out int pdwIDItem );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetSelectedControlItem ( [In] int dwIDCtl, [In] int dwIDItem ); // Not valid for OpenDropDown
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void StartVisualGroup ( [In] int dwIDCtl, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszLabel );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void EndVisualGroup ();
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void MakeProminent ( [In] int dwIDCtl );
	}

	//[ComImport,
	//Guid(IIDGuid.IFileDialogControlEvents),
	//InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
	//internal interface IFileDialogControlEvents
	//{

	//    [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
	//    void OnItemSelected([In, MarshalAs(UnmanagedType.Interface)] IFileDialogCustomize pfdc, [In] int dwIDCtl, [In] int dwIDItem);
	//    [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
	//    void OnButtonClicked([In, MarshalAs(UnmanagedType.Interface)] IFileDialogCustomize pfdc, [In] int dwIDCtl);
	//    [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
	//    void OnCheckButtonToggled([In, MarshalAs(UnmanagedType.Interface)] IFileDialogCustomize pfdc, [In] int dwIDCtl, [In] bool bChecked);
	//    [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
	//    void OnControlActivating([In, MarshalAs(UnmanagedType.Interface)] IFileDialogCustomize pfdc, [In] int dwIDCtl);
	//}

	[ComImport,
	Guid ( IIDGuid.IPropertyStore ),
	InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
	internal interface IPropertyStore
	{
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetCount ( [Out] out uint cProps );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetAt ( [In] uint iProp, out NativeMethods.PROPERTYKEY pkey );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void GetValue ( [In] ref NativeMethods.PROPERTYKEY key, out object pv );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void SetValue ( [In] ref NativeMethods.PROPERTYKEY key, [In] ref object pv );
		[MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
		void Commit ();
	}

}


text:
This library offers lambda expressions that can be used to generate
YAML manifests from templates files based on input values and value
templates.

The package name is `utilities.generate`.

## Generate a List of YAML Manifests taken from a Multi Document Template

```
    generateFile(<values>,<stubs>,<file>) -> list of manifests
```

- `values` is a map template or map defining some input values used as
           top level stub for values template files
- `stubs`  is a list of optional stub files (stubs might be ~ or []) used
           as initial value template and stubs
- `file`   is a template file containing yaml manifests processed
           using the input value merge result using the binding
          `values` or `settings`

The given values are processed as top-level stub for the given stubs to produce
the value settings for the manifest template processing.

The result is a list of processed manifests taken from the template file.

## Generate a List of YAML Manifests taken from a List of Multi Document Templates

```
    generateFiles(<values>,<stubs>,<files>) -> list of manifests
```

- `values` is a map template or map defining some input values used as
           top level stub for values template files
- `stubs`  is a list of optional stub files (stubs might be ~ or []) used
           as initial value template and stubs
- `files`  is a list of template files containing yaml manifests processed
           using the input value merge result using the binding
          `values` or `settings`

The given values are processed as top-level stub for the given stubs to produce
the value setiings for the manifest template processing.

The result is a list of processed manifests taken from all the template files in
the given order.

## Generate a List of YAML Manifests taken from Multi Document Templates found in a Directory

```
    generateDir(<values>,<stubs>,<dir>) -> list of manifests
```

- `values` is a map template or map defining some input values used as
           top level stub for values template files
- `stubs`  is a list of optional stub files (stubs might be ~ or []) used
           as initial value template and stubs
- `dir`    is a directory containing template files (suffix .yaml) to be processed
           using the input value merge result using the binding
          `values` or `settings`

The given values are processed as top-level stub for the given stubs to produce
the value setiings for the manifest template processing.

The result is a list of processed manifests taken from all the template files in
the given order.

## Generate a List of YAML Manifests taken from standard Chart Directory Layout

```
    generateChart(<values>,<dir>) -> list of manifests
```

- `values` is a map template or map defining some input values used as
           top level stub for values template files
- `dir`    base directoty of the chart.

This function uses `generateDir` to process manifest template files from the
directory `<dir>/templates`, using `<dir>/values.yaml` as value template


text:
>This repository is used to store home-made Travian game plugin. if you need more info, please contact: max.g.laboratory@gmail.com

## 15.Jan.2016
1. Upgrade basic funciton including: auto soldier boost + field upgrade fucntion
2. Upgrade main Objects
3. add menu driven interface


text:
<?xml version="1.0" encoding="UTF-8"?>
<XMLRequest>
	<ClientType>iPhone</ClientType>
	<ClientVersion>4.1</ClientVersion>
	<ServiceVersion>2.1</ServiceVersion>
	<Locale>{locale}</Locale>
	<ServiceName>AccountSummaryService</ServiceName>
	<Operation>AccountSummary</Operation>
	<SummaryRequestData>
		<fragmentName>AccountSummary</fragmentName>
		<fragmentName>DCL</fragmentName>
		<fragmentName>PNEnrollStatus</fragmentName>
		<list>All</list>
		<isAccountSummary>TRUE</isAccountSummary>
	</SummaryRequestData>
	<AllLoyaltyPrograms>true</AllLoyaltyPrograms>
	<CardArtRequestData>
		<CardArtRequest>
			<tag>big-image</tag>
			<resolution>high</resolution>
			<min-width>460</min-width>
		</CardArtRequest>
	</CardArtRequestData>
	<DeviceInfo>
		<HardwareId>{hardware_id}</HardwareId>
		<AdvertisementID>{advertisement_id}</AdvertisementID>
		<OSBuild>iPhone OS 6.1.3</OSBuild>
		<DeviceModel>iPhone</DeviceModel>
		<AppName>com.americanexpress.amexservice</AppName>
		<Timestamp>{timestamp}</Timestamp>
		<TimeZoneOffset>0</TimeZoneOffset>
	</DeviceInfo>
	<LoginCredentials>
		<UserID>{username}</UserID>
		<Password>{password}</Password>
		<RememberMeUIFlagSelected>true</RememberMeUIFlagSelected>
		<ProfileDataContent>muid#pix******|rmf#1|kid#1|ed#5A30871677D706575FC3DDC99831D738E59B2191B4A4B685C88015BC8DF44409BFCD55710170DAFF3E24B13B336E2CAE3C93C8B51A9D5C71|</ProfileDataContent>
	</LoginCredentials>
</XMLRequest>


text:
<?php
namespace Craft;

class SiteSettingsModel extends BaseModel
{
	// Protected Methods
	// =========================================================================

	/**
	 * @inheritDoc BaseModel::defineAttributes()
	 *
	 * @return array
	 */
	protected function defineAttributes()
	{
		return array(
			'siteName' => array(AttributeType::Name, 'required' => true),
			'siteUrl'  => array(AttributeType::Url, 'required' => true)
		);
	}
}


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

-->
<resources>
    <item type="id" name="action_toggle_full_caching" />
    <item type="id" name="action_select_all" />
    <item type="id" name="viewpager" />

    <item type="id" name="mediadata_tag_target" />
    <item type="id" name="mediadata_tag_viewtype" />
</resources>


text:
// Generated by Haxe 3.3.0
#include <hxcpp.h>

#ifndef INCLUDED_flixel_system_replay_CodeValuePair
#include <flixel/system/replay/CodeValuePair.h>
#endif

namespace flixel{
namespace _hx_system{
namespace replay{

void CodeValuePair_obj::__construct(Int code,Int value){
            	HX_STACK_FRAME("flixel.system.replay.CodeValuePair","new",0x0170ef56,"flixel.system.replay.CodeValuePair.new","flixel/system/replay/CodeValuePair.hx",11,0xc7f270bb)
            	HX_STACK_THIS(this)
            	HX_STACK_ARG(code,"code")
            	HX_STACK_ARG(value,"value")
HXLINE(  12)		this->code = code;
HXLINE(  13)		this->value = value;
            	}

Dynamic CodeValuePair_obj::__CreateEmpty() { return new CodeValuePair_obj; }

hx::ObjectPtr< CodeValuePair_obj > CodeValuePair_obj::__new(Int code,Int value)
{
	hx::ObjectPtr< CodeValuePair_obj > _hx_result = new CodeValuePair_obj();
	_hx_result->__construct(code,value);
	return _hx_result;
}

Dynamic CodeValuePair_obj::__Create(hx::DynamicArray inArgs)
{
	hx::ObjectPtr< CodeValuePair_obj > _hx_result = new CodeValuePair_obj();
	_hx_result->__construct(inArgs[0],inArgs[1]);
	return _hx_result;
}

CodeValuePair_obj::CodeValuePair_obj()
{
}

hx::Val CodeValuePair_obj::__Field(const ::String &inName,hx::PropertyAccess inCallProp)
{
	switch(inName.length) {
	case 4:
		if (HX_FIELD_EQ(inName,"code") ) { return hx::Val( code); }
		break;
	case 5:
		if (HX_FIELD_EQ(inName,"value") ) { return hx::Val( value); }
	}
	return super::__Field(inName,inCallProp);
}

hx::Val CodeValuePair_obj::__SetField(const ::String &inName,const hx::Val &inValue,hx::PropertyAccess inCallProp)
{
	switch(inName.length) {
	case 4:
		if (HX_FIELD_EQ(inName,"code") ) { code=inValue.Cast< Int >(); return inValue; }
		break;
	case 5:
		if (HX_FIELD_EQ(inName,"value") ) { value=inValue.Cast< Int >(); return inValue; }
	}
	return super::__SetField(inName,inValue,inCallProp);
}

void CodeValuePair_obj::__GetFields(Array< ::String> &outFields)
{
	outFields->push(HX_HCSTRING("code","\x2d","\xb1","\xc4","\x41"));
	outFields->push(HX_HCSTRING("value","\x71","\x7f","\xb8","\x31"));
	super::__GetFields(outFields);
};

#if HXCPP_SCRIPTABLE
static hx::StorageInfo CodeValuePair_obj_sMemberStorageInfo[] = {
	{hx::fsInt,(int)offsetof(CodeValuePair_obj,code),HX_HCSTRING("code","\x2d","\xb1","\xc4","\x41")},
	{hx::fsInt,(int)offsetof(CodeValuePair_obj,value),HX_HCSTRING("value","\x71","\x7f","\xb8","\x31")},
	{ hx::fsUnknown, 0, null()}
};
static hx::StaticInfo *CodeValuePair_obj_sStaticStorageInfo = 0;
#endif

static ::String CodeValuePair_obj_sMemberFields[] = {
	HX_HCSTRING("code","\x2d","\xb1","\xc4","\x41"),
	HX_HCSTRING("value","\x71","\x7f","\xb8","\x31"),
	::String(null()) };

static void CodeValuePair_obj_sMarkStatics(HX_MARK_PARAMS) {
	HX_MARK_MEMBER_NAME(CodeValuePair_obj::__mClass,"__mClass");
};

#ifdef HXCPP_VISIT_ALLOCS
static void CodeValuePair_obj_sVisitStatics(HX_VISIT_PARAMS) {
	HX_VISIT_MEMBER_NAME(CodeValuePair_obj::__mClass,"__mClass");
};

#endif

hx::Class CodeValuePair_obj::__mClass;

void CodeValuePair_obj::__register()
{
	hx::Static(__mClass) = new hx::Class_obj();
	__mClass->mName = HX_HCSTRING("flixel.system.replay.CodeValuePair","\x64","\x4c","\x0d","\x50");
	__mClass->mSuper = &super::__SGetClass();
	__mClass->mConstructEmpty = &__CreateEmpty;
	__mClass->mConstructArgs = &__Create;
	__mClass->mGetStaticField = &hx::Class_obj::GetNoStaticField;
	__mClass->mSetStaticField = &hx::Class_obj::SetNoStaticField;
	__mClass->mMarkFunc = CodeValuePair_obj_sMarkStatics;
	__mClass->mStatics = hx::Class_obj::dupFunctions(0 /* sStaticFields */);
	__mClass->mMembers = hx::Class_obj::dupFunctions(CodeValuePair_obj_sMemberFields);
	__mClass->mCanCast = hx::TCanCast< CodeValuePair_obj >;
#ifdef HXCPP_VISIT_ALLOCS
	__mClass->mVisitFunc = CodeValuePair_obj_sVisitStatics;
#endif
#ifdef HXCPP_SCRIPTABLE
	__mClass->mMemberStorageInfo = CodeValuePair_obj_sMemberStorageInfo;
#endif
#ifdef HXCPP_SCRIPTABLE
	__mClass->mStaticStorageInfo = CodeValuePair_obj_sStaticStorageInfo;
#endif
	hx::_hx_RegisterClass(__mClass->mName, __mClass);
}

} // end namespace flixel
} // end namespace system
} // end namespace replay