text:
/*!
* Developer Hub Customization of the underlying Bootstrap Flatly Theme
*/

html, body {
    margin: 0;
    padding :0;
    height: 100%; /* needed for .main min-height */
}

body {
    overflow-x: hidden;
    color: #{{ site.color.darkbrown}};
}

.main {
    position:relative; /* needed for footer positioning*/
    height:auto !important; /* real browsers */
    min-height:100%; /* real browsers */
}

p {
    font-size: {{ site.maintext_fontsize }};
}

img {
    margin: 10px 0;
}

small {
    margin-bottom: 8px;
    display: inline-block;
}

.well code, .well-sm code, .alert code, .bg-primary code, .bg-success code, .bg-info code, .bg-warning code, .bg-danger code {
    background-color: transparent;
    color: #fff;
    font-weight: bold;
}

pre {
    background-color: #{{ site.color.lightbrown_background }};
    color: #{{ site.color.darkbrown }};
    font-size: {{ site.code_fontsize }};
    padding: 0;
}

pre pre {
    background-color: transparent;
    border: none;
    margin: 0;
    padding: 0px 10px;
}

.highlight pre {
    background-color: transparent;
    border: 0 none;
    margin-bottom: 0;
    margin-top: 0;
    word-break: normal;
}

.highlight pre code:first-child{
    display:inline-block;
    padding-right:45px;
}

.table-responsive .highlight pre {
    white-space:normal;
}

.well {
    background-color: #B2A79D;
    color: #fff;
}

.badge {
    background-color:  #{{ site.color.darkbrown }};
}

.btn-primary .badge {
    background-color: #fff;
    color: #{{ site.color.darkbrown }};
}

a,
a:hover,
a:focus,
a:active,
a.active {
    outline: 0;
    color: #{{ site.color.pink }};
}

a.anchor {
    display:block;
    position:relative;
    top:-110px;
    visibility:hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
    padding-top: 0;
    margin-top: 21px;
    margin-bottom: 10.5px;
}

h1, .h1 {
    font-size: 32px;
}

h2, .h2 {
    font-size: 26px;
}

h3, .h3 {
    font-size: 19px;
}

h4, .h4 {
    font-size: 15px;
}

h5, .h5 {
    font-size: 13px;
}

h6, .h6 {
    font-size: 13px;
    text-transform: none;
}

h3, h5 {
    color: #{{ site.color.pink }};
}

.navbar-header h3 {
    clear: both;
    float: left;
    font-size: 17px;
    margin-left: 7px;
    margin-top: 0;
    padding-top: 0;
}

#content ul li, #content ol li {
    font-size: {{ site.maintext_lists_fontsize }};
    padding-left: 7px;
}

hr.star-light,
hr.star-primary {
    margin: 25px auto 30px;
    padding: 0;
    max-width: 250px;
    border: 0;
    border-top: solid 5px;
    text-align: center;
}

hr.star-light:after,
hr.star-primary:after {
    display: inline-block;
    position: relative;
    top: -.8em;
    padding: 0 .25em;
    font-family: FontAwesome;
    font-size: 2em;
}

hr.star-light {
    border-color: #fff;
}

hr.star-light:after {
    color: #fff;
    background-color: #{{ site.color.darkbrown }};
}

hr.star-primary {
    border-color: #{{ site.color.lightbrown }};
}

hr.star-primary:after {
    color: #{{ site.color.lightbrown }};
    background-color: #fff;
}

.img-centered {
    margin: 0 auto;
}

header {
    text-align: center;
    color: #fff;
    background-image:url("/assets/img/projects/Transparenz.jpg");
    background-position: 43% 57%;
}

header .container {
    padding-top: 100px;
    padding-bottom: 50px;
}

header .header-background {
    background: rgba(0, 128, 128, 0.4) none repeat scroll 0px 0px;
}

header img {
    display: block;
    margin: 0 auto 20px;
}

header .intro-text .name {
    display: block;
    text-transform: uppercase;
    font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 2em;
    font-weight: 700;
}

header .intro-text .skills {
    font-size: 1.25em;
    font-weight: 300;
}

@media(min-width:768px) {
    header .container {
        padding-top: 200px;
        padding-bottom: 100px;
    }

    header .intro-text .name {
        font-size: 4.75em;
    }

    header .intro-text .skills {
        font-size: 1.75em;
    }
}

@media(min-width:768px) {
    .navbar-fixed-top {
        padding: 5px 0;
        -webkit-transition: padding .3s;
        -moz-transition: padding .3s;
        transition: padding .3s;
    }

    .navbar-fixed-top .navbar-brand {
        font-size: 1.5em;
        -webkit-transition: all .3s;
        -moz-transition: all .3s;
        transition: all .3s;
    }

    .navbar-fixed-top.navbar-shrink {
        padding: 2px 0;
    }

    .navbar-fixed-top.navbar-shrink .navbar-brand {
        font-size: 1.5em;
    }
}

.navbar-default .navbar-brand {
    color: #{{ site.color.lightbrown}};
    padding: 9px 15px 9px;
    height: 63px;
    font-size: {{ site.mainmenu_fontsize }};
}

.navbar {
    text-transform: uppercase;
    font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
}

.navbar a:focus {
    outline: 0;
}

.navbar .navbar-nav {
    margin-right: -10px;
}

.navbar-nav > li > a {
    font-size: 14px;
    padding: 0;
    margin: 13px 10px 0;
    letter-spacing: 0;
}

.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
    background-color: transparent;
    border-bottom: 2px solid #fff;
    display: inline-block;
 }

.navbar .navbar-nav li a:focus {
    outline: 0;
}

.navbar-default,
.navbar-inverse {
    border: 0;
}

section {
    padding: 85px 0 0px;
}

section.success {
    color: #fff;
    background: #{{ site.color.darkbrown }};
}

@media(max-width:767px) {
    section {
        padding: 75px 0;
    }

    section.first {
        padding-top: 75px;
    }
}

section.portfolio .portfolio-item {
    right: 0;
    margin-top: 15px;
}

section.portfolio .portfolio-item .portfolio-link {
    display: block;
    position: relative;
    margin: 0 auto;
    max-width: 400px;
}

section.portfolio .portfolio-item .portfolio-link .caption {
    background: #e1e0df;
    width: 100%;
    color: #{{site.color.darkbrown }};
}

section.portfolio .portfolio-item .portfolio-link .caption:hover,
section.portfolio .portfolio-item .portfolio-link .caption:active,
section.portfolio .portfolio-item .portfolio-link .caption:focus {
    outline: 1px dotted #{{site.color.darkpurple }};
    width: 100%;
    color: #{{site.color.darkbrown }};
}

section.portfolio .portfolio-item .portfolio-link .caption .caption-content:hover,
section.portfolio .portfolio-item .portfolio-link .caption .caption-content:active,
section.portfolio .portfolio-item .portfolio-link .caption .caption-content:focus {

    text-decoration: none;
}

section.portfolio .portfolio-item .portfolio-link .caption .caption-content {
    position: relative;
    width: 100%;
    text-align: center;
    font-size: 16px;
    padding: 0 1em;
    height: 150px;
    display: table-cell;
    vertical-align: middle;
}

section.portfolio .portfolio-item .portfolio-link .caption .caption-content i {
    margin-top: -12px;
}

section.portfolio .portfolio-item .portfolio-link .caption .caption-content h3,
section.portfolio .portfolio-item .portfolio-link .caption .caption-content h4 {
    margin: 0;
}

section.portfolio .portfolio-item .portfolio-link .caption .caption-image {
    height: 110px;
    overflow: hidden;
}

section.portfolio .portfolio-item .portfolio-link .caption .caption-image img {
    height: 100%;
    width: 100%;
}

section.portfolio .portfolio-item .portfolio-link:hover {
    text-decoration: none;
}

section.portfolio * {
    z-index: 2;
}

@media(min-width:767px) {
    section.portfolio .portfolio-item {
        margin-top: 30px;
    }
}

.btn-outline {
    margin-top: 15px;
    border: solid 2px #fff;
    font-size: 20px;
    color: #fff;
    background: 0 0;
    transition: all .3s ease-in-out;
}

.btn-outline:hover,
.btn-outline:focus,
.btn-outline:active,
.btn-outline.active {
    border: solid 2px #fff;
    color: #{{ site.color.darkbrown }};
    background: #fff;
}

.floating-label-form-group {
    position: relative;
    margin-bottom: 0;
    padding-bottom: .5em;
    border-bottom: 1px solid #eee;
}

.floating-label-form-group input,
.floating-label-form-group textarea {
    z-index: 1;
    position: relative;
    padding-right: 0;
    padding-left: 0;
    border: 0;
    border-radius: 0;
    font-size: 1.5em;
    background: 0 0;
    box-shadow: none!important;
    resize: none;
}

.floating-label-form-group label {
    display: block;
    z-index: 0;
    position: relative;
    top: 2em;
    margin: 0;
    font-size: .85em;
    line-height: 1.764705882em;
    vertical-align: middle;
    vertical-align: baseline;
    opacity: 0;
    -webkit-transition: top .3s ease,opacity .3s ease;
    -moz-transition: top .3s ease,opacity .3s ease;
    -ms-transition: top .3s ease,opacity .3s ease;
    transition: top .3s ease,opacity .3s ease;
}

.floating-label-form-group::not(:first-child) {
    padding-left: 14px;
    border-left: 1px solid #eee;
}

.floating-label-form-group-with-value label {
    top: 0;
    opacity: 1;
}

.floating-label-form-group-with-focus label {
    color: #{{ site.color.darkbrown }};
}

form .row:first-child .floating-label-form-group {
    border-top: 1px solid #eee;
}

footer {
    color: #fff;
    width:100%;
    margin-top:80px;
}

footer h3 {
    margin-bottom: 30px;
}

footer .footer-above {
    padding-top: 50px;
    background-color: #{{ site.color.darkbrown }};
    color: #fff;
}

footer .footer-col {
    margin-bottom: 50px;
}

footer .footer-below {
    padding: 10px 0;
    background-color: #{{ site.color.lightbrown }};
    border-top:
    color: #fff;
    font-weight: bold;
}

.btn-social {
    display: inline-block;
    width: 50px;
    height: 50px;
    border: 2px solid #fff;
    border-radius: 100%;
    text-align: center;
    font-size: 20px;
    line-height: 45px;
}

.btn:focus,
.btn:active,
.btn.active {
    outline: 0;
}

.scroll-top {
    z-index: 1049;
    position: fixed;
    right: 2%;
    bottom: 2%;
    width: 50px;
    height: 50px;
}

.scroll-top .btn {
    width: 50px;
    height: 50px;
    border-radius: 100%;
    font-size: 20px;
    line-height: 28px;
}

.scroll-top .btn:focus {
    outline: 0;
}

.portfolio-modal .modal-content {
    padding: 100px 0;
    min-height: 100%;
    border: 0;
    border-radius: 0;
    text-align: center;
    background-clip: border-box;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.portfolio-modal .modal-content h2 {
    margin: 0;
    font-size: 3em;
}

.portfolio-modal .modal-content img {
    margin-bottom: 30px;
}

.portfolio-modal .modal-content .item-details {
    margin: 30px 0;
}

.portfolio-modal .close-modal {
    position: absolute;
    top: 25px;
    right: 25px;
    width: 75px;
    height: 75px;
    background-color: transparent;
    cursor: pointer;
}

.portfolio-modal .close-modal:hover {
    opacity: .3;
}

.portfolio-modal .close-modal .lr {
    z-index: 1051;
    width: 1px;
    height: 75px;
    margin-left: 35px;
    background-color: #{{ site.color.lightbrown }};
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.portfolio-modal .close-modal .lr .rl {
    z-index: 1052;
    width: 1px;
    height: 75px;
    background-color: #{{ site.color.lightbrown }};
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

/* Fix modal mouse wheel issues */
/* https://github.com/twbs/bootstrap/issues/16297 */
.modal.fade.in {
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
}

/*
affilinet changes
*/
.affilinet_footer_name {
 color: #{{ site.color.pink }};
 font-family: "NHaasGroteskTXW01-75Bd","Arial","Helvetica",sans-serif;
 font-size: 40px;
 line-height: 1.2;
 margin-bottom: 0;
}

.affilinet_footer_slogan{
 color: #ebe8e8;
 font-family: "NHaasGroteskTXW01-75Bd","Arial","Helvetica",sans-serif;
 font-size: 25px;
 line-height: 1.2;
}

.navbar-default {
    background: #{{site.color.lightbrown }};
}

.navbar-default .navbar-toggle {
    border: none;
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: #{{ site.color.pink }};
}

.navbar-toggle {
 background-color: #{{ site.color.darkbrown }};
}

.btn-default {
 background-color: #{{ site.color.darkbrown }};
 border: none;
}

.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default {
    background-color: #{{ site.color.darkbrown }};
    border: none;
}

.btn-primary {
    background-color: #{{ site.color.lightbrown }};
    border: none;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary {
    background-color: #{{ site.color.darkbrown }};
    border: none;
}

.scroll-top .btn {
    line-height: 24px;
}

.container.inner {
    margin-top: 120px;
}

nav.fixed-sidebar {
    position: fixed;
    padding-top: 20px;
}

nav.fixed-sidebar ul li a, nav.fixed-sidebar ol li a {
        color: #{{ site.color.darkbrown }};
    font-size: {{ site.sidebar_fontsize }};
}

.nav-tabs {
    border-bottom: 1px solid #{{ site.color.lightbrown }};
}

.nav-tabs > li > a {
    padding: 6px 10px;
    font-size: 14px;
}

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus  {
    border-color: #{{ site.color.lightbrown }} #{{ site.color.lightbrown }} transparent;
}

.nav-tabs li a:hover, .nav-tabs li a:focus {
   border-color: #{{ site.color.lightbrown }};
}

.tab-content {
    padding: 10px;
}

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    background: #{{ site.color.pink }};
}

.nav li a:hover, .nav li a:focus {
    background-color: #{{ site.color.lightbrown_background }};
}

.nav .nav {
  display: none;
}

.nav .active .nav {
  display: block;
}

.nav .nav a {
  font-weight: normal;
  font-size: .85em;
  color: #{{ site.color.darkbrown }};
}

.nav .nav .nav a {
  padding-left: 30px;
}

.nav .nav .active .nav a {
   font-weight: normal;
}

.nav .nav span {
  margin: 0 5px 0 2px;
}

.nav .nav .active a,
.nav .nav .active:hover a,
.nav .nav .active:focus a {
  font-weight: bold;
}

.inner section {
    padding-top: 10px;
    padding-bottom: 0px;
}

.text-muted, .text-muted:hover {
    color: #{{ site.color.lightbrown }};
}

.text-primary, .text-primary:hover {
    color: #{{ site.color.pink }};
}

.text-danger, .text-danger:hover {
    color: #{{ site.color.red }};
}

.text-success, .text-success:hover {
    color: #{{ site.color.green }};
}

.text-info, .text-info:hover {
    color: #{{ site.color.purple }};
}

.text-warning, .text-warning:hover {
    color: #{{ site.color.yellow }};
}

.bg-danger {
    background-color: #{{ site.color.red }};
    padding: 10px;
    color: #fff;
}

.bg-success {
    background-color:#{{ site.color.green }};
    padding: 10px;
    color: #fff;
}

.bg-info {
    background-color: #{{ site.color.purple }};
    padding: 10px;
    color: #fff;
}

.bg-warning {
    background-color: #{{ site.color.yellow }};
    padding: 10px;
    color: #fff;
}

.bg-primary {
    background-color: #{{ site.color.pink }};
    padding: 10px;
    color: #fff;
}

.label-default {
    background-color: #{{ site.color.darkbrown }};
}

.label-primary {
    background-color:  #{{ site.color.pink }};
}

.label-danger {
    background-color: #{{ site.color.red }};
}

.label-info {
    background-color: #{{ site.color.purple }};
}

.label-success {
    background-color: #{{ site.color.green }};
}

.label-warning {
    background-color:  #{{ site.color.yellow }};
}

.btn-default {
    background-color: #{{ site.color.darkbrown }};
    border-color: #352b28;
}

.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default {
    background-color: #1e1817;
    border-color: #1b1514;
}

.btn-primary {
    background-color: #{{ site.color.pink }};
    border-color: #c7193d;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary {
    background-color: #b11636;
    border-color: #9f1330;
}

.btn-danger {
    background-color:  #{{ site.color.red }};
    border-color: #e53827;
}

.btn-danger:hover, .btn-danger:focus, .btn-danger:active, .btn-danger.active, .open > .dropdown-toggle.btn-danger {
    background-color: #f81600;
    border-color: #df1300;
}

.btn-info {
    background-color: #{{ site.color.purple }};
    border-color: #810051;
}

.btn-info:hover, .btn-info:focus, .btn-info:active, .btn-info.active, .open > .dropdown-toggle.btn-info {
    background-color: #5d003b;
    border-color: #530035;
}

.btn-success {
    background-color: #{{ site.color.green }};
    border-color: #366c48;
}

.btn-success:hover, .btn-success:focus, .text-success .text-success .btn-success:active, .btn-success.active, .open > .dropdown-toggle.btn-success {
    background-color: #2c5639;
    border-color: #274d33;
}

.btn-warning {
    background-color: #{{ site.color.yellow }};
    border-color: #d47409;
}

.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active, .open > .dropdown-toggle.btn-warning {
    background-color: #bb6608;
    border-color: #a85b07;
}

.btn-link:hover, .btn-link:focus, .btn-link:active, .btn-link.active, .open > .dropdown-toggle.btn-link {
    background-color: transparent;
    color: #{{ site.color.darkbrown }};
}

.alert {
    padding: 10px;
}
.alert-info {
   background-color: #{{ site.color.purple }};
   border-color: #810051;
}
.alert-success {
    background-color: #{{ site.color.green }};
    border-color: #366c48;
}
.alert-warning {
   background-color:  #{{ site.color.yellow }};
   border-color: #d47409;
}
.alert-danger {
   background-color:  #{{ site.color.red }};
   border-color: e53827;
}

.dropdown-menu > li > a {
    color: #3B302D;
}

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus  {
    color: #3B302D;
    background-color: #{{ site.color.lightbrown_background }};
}

#content ul.dropdown-menu li, #content ol.dropdown-menu li {
    font-size: 15px;
    padding-left: 0px;
}

@media(max-width:767px) {
    .breadcrumb {
        display: none;
    }
}

@media(min-width:768px) {

    .breadcrumb {
        background: transparent;
        padding: 8px 15px 8px 0;
    }

    .breadcrumb > li + li::before {
        color: #A8A199;
    }

    .breadcrumb > .active {
        color: #A8A199;
    }

    ul.breadcrumb li, ol.breadcrumb li {
        font-size: 15px;
        padding-left: 2px;
    }

    ul.breadcrumb li a, ol.breadcrumb li a {
       color: #{{ site.color.darkbrown }};
    }
}

table, table p, table ul li, table ol li, #content table ul li, #content table ol li {
    font-size: {{ site.table_fontsize }};
}

#content table ul li, #content table ol li {
    padding-top: 2px;
    padding-bottom: 2px;
}

.table > caption + thead > tr:first-child > td, .table > caption + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > th, .table > thead:first-child > tr:first-child > td, .table > thead:first-child > tr:first-child > th {
    border-top: 0 none;
}

.table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, .table > thead > tr > th {
    border-top: 1px solid #e0dbd7;
}

.table > thead > tr > th {
    border-bottom: 2px solid #{{ site.color.lightbrown }};
}

.table-responsive > .table > thead > tr > th, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > td {
    white-space: normal;
}

.example {
   background-color: #fff;
    border-color: #ddd;
    border-radius: 4px 4px 0 0;
    border-width: 1px;
    border-style: solid;
    box-shadow: none;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 15px;
    padding: 45px 15px 15px;
    position: relative;
}

.example::after {
    color: #959595;
    content: "Example";
    font-size: 12px;
    font-weight: 700;
    left: 15px;
    letter-spacing: 1px;
    position: absolute;
    text-transform: uppercase;
    top: 15px;
}

.example-padded-bottom {
    padding-bottom: 24px;
}

.example + .highlight, .example + .zero-clipboard + .highlight {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-width: 1px;
    border-color: #e0dbd7;
    border-style: solid;
    margin-left: 0;
    margin-right: 0;
    margin-top: -16px;
}

.zero-clipboard {
    display: bock;
    position: relative;
}

.example + .zero-clipboard .btn-clipboard {
    border-top-right-radius: 0;
    top: -16px;
}

.btn-clipboard {
    background-color: #fff;
    border: 1px solid #e1e1e8;
    border-radius: 0 4px;
    color: #767676;
    cursor: pointer;
    display: block;
    font-size: 12px;
    padding: 5px 8px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
}


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

const propTypes = {
  setCurrentTable: PropTypes.func.isRequired,
  initTable: PropTypes.func.isRequired,
  className: PropTypes.string.isRequired,
  toggleContextMenu: PropTypes.func.isRequired,
  tableName: PropTypes.string.isRequired
};

class SidebarItemComponent extends Component {

  showTable = () => {
    const { tableName } = this.props;
    this.props.setCurrentTable(tableName);
    this.props.initTable({ tableName });
    document.getElementById('wrapper').scrollTop = 0;
  }

  handleRightClick = () => {
    this.props.toggleContextMenu('table', this.props.tableName);
  }

  render() {
    const { className, tableName } = this.props;
    return (

          {tableName}

    );
  }
}

SidebarItemComponent.propTypes = propTypes;

export default SidebarItemComponent;

redpajama_set_name: RedPajamaGithub


text:
/*!
 * Copyright (c) 2015 by Contributors
 */
#include <mxnet/storage.h>
#include "./storage_manager.h"
#include "./naive_storage_manager.h"
#include "./pooled_storage_manager.h"
#include "./cpu_shared_storage_manager.h"
#include "./cpu_device_storage.h"
#include "./pinned_memory_storage.h"
#include "../common/lazy_alloc_array.h"
#include "../profiler/storage_profiler.h"

namespace mxnet {

// consider change storage as a pure abstract class
class StorageImpl : public Storage {
 public:
  void Alloc(Handle* handle) override;
  void Free(Handle handle) override;
  void DirectFree(Handle handle) override;
  void SharedIncrementRefCount(Handle handle) override;
  StorageImpl() {}
  virtual ~StorageImpl() = default;

 private:
  static constexpr size_t kMaxNumberOfDevices = Context::kMaxDevType + 1;
#if MXNET_USE_CUDA
  static int num_gpu_device;
#endif  // MXNET_USE_CUDA

  static void ActivateDevice(Context ctx) {
    switch (ctx.dev_type) {
      case Context::kCPU:
      case Context::kCPUShared: break;
      case Context::kGPU:
      case Context::kCPUPinned: {
#if MXNET_USE_CUDA
          if (num_gpu_device > 0) {
            CUDA_CALL(cudaSetDevice(ctx.real_dev_id()));
          }
#endif  // MXNET_USE_CUDA
          break;
        }
      default:
        LOG(FATAL) << "Unimplemented device";
    }
  }
  // internal storage managers
  std::array<common::LazyAllocArray<storage::StorageManager>,
             kMaxNumberOfDevices> storage_managers_;
#if MXNET_USE_PROFILER
  storage::DeviceStorageProfiler profiler_;
#endif  // MXNET_USE_PROFILER
};  // struct Storage::Impl
#if MXNET_USE_CUDA
int StorageImpl::num_gpu_device = 0;
#endif  // MXNET_USE_CUDA

void StorageImpl::Alloc(Storage::Handle* handle) {
  // space already recycled, ignore request
  auto&& device = storage_managers_.at(handle->ctx.dev_type);
  std::shared_ptr<storage::StorageManager> manager = device.Get(
      handle->ctx.real_dev_id(), [handle]() {
        storage::StorageManager *ptr = nullptr;
        switch (handle->ctx.dev_type) {
          case Context::kCPU: {
            ptr = new storage::NaiveStorageManager<storage::CPUDeviceStorage>();
            break;
          }
          case Context::kCPUShared: {
            ptr = new storage::CPUSharedStorageManager();
            break;
          }
          case Context::kCPUPinned: {
#if MXNET_USE_CUDA
            num_gpu_device = 0;
            cudaError_t e = cudaGetDeviceCount(&num_gpu_device);
            if (e != cudaSuccess) {
              num_gpu_device = 0;
            }
            if (num_gpu_device > 0) {
              ptr = new storage::NaiveStorageManager<storage::PinnedMemoryStorage>();
            } else {
              ptr = new storage::NaiveStorageManager<storage::CPUDeviceStorage>();
            }
#else
            ptr = new storage::NaiveStorageManager<storage::CPUDeviceStorage>();
#endif  // MXNET_USE_CUDA
            break;
          }
          case Context::kGPU: {
#if MXNET_USE_CUDA
            CUDA_CALL(cudaGetDeviceCount(&num_gpu_device));
            CHECK_GT(num_gpu_device, 0) << "GPU usage requires at least 1 GPU";
            ptr = new storage::GPUPooledStorageManager();
#else
            LOG(FATAL) << "Compile with USE_CUDA=1 to enable GPU usage";
#endif  // MXNET_USE_CUDA
            break;
          }
          default: LOG(FATAL) <<  "Unimplemented device " << handle->ctx.dev_type;
        }
        return ptr;
      });

  this->ActivateDevice(handle->ctx);
  manager->Alloc(handle);
#if MXNET_USE_PROFILER
  profiler_.OnAlloc(*handle);
#endif  // MXNET_USE_PROFILER
}

void StorageImpl::Free(Storage::Handle handle) {
  const Context &ctx = handle.ctx;
  auto&& device = storage_managers_.at(ctx.dev_type);
  std::shared_ptr<storage::StorageManager> manager = device.Get(
      ctx.real_dev_id(), []() {
        LOG(FATAL) <<  "Cannot Free space to a device you have not allocated";
        return nullptr;
      });
  this->ActivateDevice(ctx);
  manager->Free(handle);
#if MXNET_USE_PROFILER
  profiler_.OnFree(handle);
#endif  // MXNET_USE_PROFILER
}

void StorageImpl::DirectFree(Storage::Handle handle) {
  const Context &ctx = handle.ctx;
  auto&& device = storage_managers_.at(ctx.dev_type);
  std::shared_ptr<storage::StorageManager> manager = device.Get(
      ctx.real_dev_id(), []() {
        LOG(FATAL) <<  "Cannot Free space to a device you have not allocated";
        return nullptr;
      });
  this->ActivateDevice(ctx);
  manager->DirectFree(handle);
#if MXNET_USE_PROFILER
  profiler_.OnFree(handle);
#endif  // MXNET_USE_PROFILER
}

void StorageImpl::SharedIncrementRefCount(Storage::Handle handle) {
  CHECK_EQ(handle.ctx.dev_type, Context::kCPUShared);
  auto&& device = storage_managers_.at(Context::kCPUShared);
  auto manager = device.Get(0, []() {
      LOG(FATAL) << "Cannot increment ref count before allocating any shared memory.";
      return nullptr;
    });
  dynamic_cast<storage::CPUSharedStorageManager*>(manager.get())->IncrementRefCount(handle);
}

std::shared_ptr<Storage> Storage::_GetSharedRef() {
#ifdef __MXNET_JS__
  // dummy code needed for emscripten code to pass
  // do not know why, the new will be NULLPTR
  static int *q = new int();
#endif
  static std::shared_ptr<Storage> inst(new StorageImpl());
  return inst;
}

Storage* Storage::Get() {
  static Storage *ptr = _GetSharedRef().get();
  return ptr;
}
}  // namespace mxnet


text:
local CBM           = CALLBACK_MANAGER
local CreateString  = ZO_CreateStringId
local PSBT_EVENTS   = PSBT.EVENTS
local PSBT_STRINGS  = PSBT.STRINGS

--[[
FALL_DAMAGE         = 'SI_PSBT_EVENT_FALL_DAMAGE',
CANNOT_SEE          = 'SI_PSBT_EVENT_CANNOT_SEE',
DAMAGE_CRIT         = 'SI_PSBT_EVENT_DAMAGE_CRIT',
DAMAGE              = 'SI_PSBT_EVENT_DAMAGE',
HEALING_CRIT        = 'SI_PSBT_EVENT_HEAL_CRIT',
HEALING             = 'SI_PSBT_EVENT_HEAL',
KILLING_BLOW        = 'SI_PSBT_EVENT_KILLING_BLOW',
FALLING             = 'SI_PSBT_EVENT_FALLING',
INTERCEPTED         = 'SI_PSBT_EVENT_INTERCEPTED',
BUSY                = 'SI_PSBT_EVENT_BUSY',
IMMUNE              = 'SI_PSBT_EVENT_IMMUNE',
INTERRUPT           = 'SI_PSBT_EVENT_INTERRUPT',
ULTIMATE_GAIN       = 'SI_PSBT_EVENT_ULTIMATE_GAIN',
ULTIMATE_READY      = 'SI_PSBT_EVENT_ULTIMATE_READY',
LOW_SOMETHING       = 'SI_PSBT_EVENT_LOW_SOMETHING',
AURA_GAINED         = 'SI_PSBT_EVENT_AURA_GAINED',
AURA_FADES          = 'SI_PSBT_EVENT_AURA_FADES',
ENERGIZE            = 'SI_PSBT_EVENT_ENERGIZE',
DRAIN               = 'SI_PSBT_EVENT_DRAIN',
]]

CBM:RegisterCallback( PSBT_EVENTS.INITIALIZE, function()

print( 'PSBT Locale: DE' )

CreateString( PSBT_STRINGS.FALL_DAMAGE,     '<<1>> rückläufig' )
CreateString( PSBT_STRINGS.CANNOT_SEE,      'Kann nicht siehst' )
CreateString( PSBT_STRINGS.DAMAGE_CRIT,     '<<1>> !' )
CreateString( PSBT_STRINGS.DAMAGE,          '<<1>>')
CreateString( PSBT_STRINGS.HEALING_CRIT,    '+<<1>> !')
CreateString( PSBT_STRINGS.HEALING,         '+<<1>>')
CreateString( PSBT_STRINGS.KILLING_BLOW,    '|cCC7D5E<<1>>|r gestorben !')
CreateString( PSBT_STRINGS.FALLING,         'Rückläufig')
CreateString( PSBT_STRINGS.INTERCEPTED,     'Abgehörte')
CreateString( PSBT_STRINGS.BUSY,            'Beschäftigt')
CreateString( PSBT_STRINGS.IMMUNE,          'Immun')
CreateString( PSBT_STRINGS.INTERRUPT,       'Unterbrechen')
CreateString( PSBT_STRINGS.ULTIMATE_GAIN,   '<<1>> letzte')
CreateString( PSBT_STRINGS.ULTIMATE_READY,  'Ultimative bereit !')
CreateString( PSBT_STRINGS.LOW_SOMETHING,   '<<1>> niedrig ! (<<2>>)')
CreateString( PSBT_STRINGS.AURA_GAINED,     '<<1>> gewonnene')
CreateString( PSBT_STRINGS.AURA_FADES,      '<<1>> fades')
CreateString( PSBT_STRINGS.ENERGIZE,        '+<<1>> (<<2>>)')
CreateString( PSBT_STRINGS.DRAIN,           '-<<1>> (<<2>>)')

end )


text:
@interface BBKIOMetrics (FoundationConformance) <NSSecureCoding, NSCopying>

@end


text:
package api

import (
	"github.com/Azure/acs-engine/pkg/api/v20160330"
	"github.com/Azure/acs-engine/pkg/api/v20160930"
	"github.com/Azure/acs-engine/pkg/api/v20170131"
	"github.com/Azure/acs-engine/pkg/api/vlabs"
)

///////////////////////////////////////////////////////////
// The converter exposes functions to convert the top level
// ContainerService resource
//
// All other functions are internal helper functions used
// for converting.
///////////////////////////////////////////////////////////

// ConvertV20160930ContainerService converts a v20160930 ContainerService to an unversioned ContainerService
func ConvertV20160930ContainerService(v20160930 *v20160930.ContainerService) *ContainerService {
	c := &ContainerService{}
	c.ID = v20160930.ID
	c.Location = v20160930.Location
	c.Name = v20160930.Name
	if v20160930.Plan != nil {
		c.Plan = &ResourcePurchasePlan{}
		convertV20160930ResourcePurchasePlan(v20160930.Plan, c.Plan)
	}
	c.Tags = map[string]string{}
	for k, v := range v20160930.Tags {
		c.Tags[k] = v
	}
	c.Type = v20160930.Type
	c.Properties = &Properties{}
	convertV20160930Properties(v20160930.Properties, c.Properties)
	return c
}

// ConvertV20160330ContainerService converts a v20160330 ContainerService to an unversioned ContainerService
func ConvertV20160330ContainerService(v20160330 *v20160330.ContainerService) *ContainerService {
	c := &ContainerService{}
	c.ID = v20160330.ID
	c.Location = v20160330.Location
	c.Name = v20160330.Name
	if v20160330.Plan != nil {
		c.Plan = &ResourcePurchasePlan{}
		convertV20160330ResourcePurchasePlan(v20160330.Plan, c.Plan)
	}
	c.Tags = map[string]string{}
	for k, v := range v20160330.Tags {
		c.Tags[k] = v
	}
	c.Type = v20160330.Type
	c.Properties = &Properties{}
	convertV20160330Properties(v20160330.Properties, c.Properties)
	return c
}

// ConvertV20170131ContainerService converts a v20170131 ContainerService to an unversioned ContainerService
func ConvertV20170131ContainerService(v20170131 *v20170131.ContainerService) *ContainerService {
	c := &ContainerService{}
	c.ID = v20170131.ID
	c.Location = v20170131.Location
	c.Name = v20170131.Name
	if v20170131.Plan != nil {
		c.Plan = &ResourcePurchasePlan{}
		convertV20170131ResourcePurchasePlan(v20170131.Plan, c.Plan)
	}
	c.Tags = map[string]string{}
	for k, v := range v20170131.Tags {
		c.Tags[k] = v
	}
	c.Type = v20170131.Type
	c.Properties = &Properties{}
	convertV20170131Properties(v20170131.Properties, c.Properties)
	return c
}

// ConvertVLabsContainerService converts a vlabs ContainerService to an unversioned ContainerService
func ConvertVLabsContainerService(vlabs *vlabs.ContainerService) *ContainerService {
	c := &ContainerService{}
	c.ID = vlabs.ID
	c.Location = vlabs.Location
	c.Name = vlabs.Name
	if vlabs.Plan != nil {
		c.Plan = &ResourcePurchasePlan{}
		convertVLabsResourcePurchasePlan(vlabs.Plan, c.Plan)
	}
	c.Tags = map[string]string{}
	for k, v := range vlabs.Tags {
		c.Tags[k] = v
	}
	c.Type = vlabs.Type
	c.Properties = &Properties{}
	convertVLabsProperties(vlabs.Properties, c.Properties)
	return c
}

// convertV20160930ResourcePurchasePlan converts a v20160930 ResourcePurchasePlan to an unversioned ResourcePurchasePlan
func convertV20160930ResourcePurchasePlan(v20160930 *v20160930.ResourcePurchasePlan, api *ResourcePurchasePlan) {
	api.Name = v20160930.Name
	api.Product = v20160930.Product
	api.PromotionCode = v20160930.PromotionCode
	api.Publisher = v20160930.Publisher
}

// convertV20160330ResourcePurchasePlan converts a v20160330 ResourcePurchasePlan to an unversioned ResourcePurchasePlan
func convertV20160330ResourcePurchasePlan(v20160330 *v20160330.ResourcePurchasePlan, api *ResourcePurchasePlan) {
	api.Name = v20160330.Name
	api.Product = v20160330.Product
	api.PromotionCode = v20160330.PromotionCode
	api.Publisher = v20160330.Publisher
}

// convertV20170131ResourcePurchasePlan converts a v20170131 ResourcePurchasePlan to an unversioned ResourcePurchasePlan
func convertV20170131ResourcePurchasePlan(v20170131 *v20170131.ResourcePurchasePlan, api *ResourcePurchasePlan) {
	api.Name = v20170131.Name
	api.Product = v20170131.Product
	api.PromotionCode = v20170131.PromotionCode
	api.Publisher = v20170131.Publisher
}

// convertVLabsResourcePurchasePlan converts a vlabs ResourcePurchasePlan to an unversioned ResourcePurchasePlan
func convertVLabsResourcePurchasePlan(vlabs *vlabs.ResourcePurchasePlan, api *ResourcePurchasePlan) {
	api.Name = vlabs.Name
	api.Product = vlabs.Product
	api.PromotionCode = vlabs.PromotionCode
	api.Publisher = vlabs.Publisher
}

func convertV20160930Properties(v20160930 *v20160930.Properties, api *Properties) {
	api.ProvisioningState = ProvisioningState(v20160930.ProvisioningState)
	if v20160930.OrchestratorProfile != nil {
		api.OrchestratorProfile = &OrchestratorProfile{}
		convertV20160930OrchestratorProfile(v20160930.OrchestratorProfile, api.OrchestratorProfile)
	}
	if v20160930.MasterProfile != nil {
		api.MasterProfile = &MasterProfile{}
		convertV20160930MasterProfile(v20160930.MasterProfile, api.MasterProfile)
	}
	api.AgentPoolProfiles = []AgentPoolProfile{}
	for _, p := range v20160930.AgentPoolProfiles {
		apiProfile := &AgentPoolProfile{}
		convertV20160930AgentPoolProfile(&p, apiProfile)
		api.AgentPoolProfiles = append(api.AgentPoolProfiles, *apiProfile)
	}
	if v20160930.LinuxProfile != nil {
		api.LinuxProfile = &LinuxProfile{}
		convertV20160930LinuxProfile(v20160930.LinuxProfile, api.LinuxProfile)
	}
	if v20160930.WindowsProfile != nil {
		api.WindowsProfile = &WindowsProfile{}
		convertV20160930WindowsProfile(v20160930.WindowsProfile, api.WindowsProfile)
	}
	if v20160930.DiagnosticsProfile != nil {
		api.DiagnosticsProfile = &DiagnosticsProfile{}
		convertV20160930DiagnosticsProfile(v20160930.DiagnosticsProfile, api.DiagnosticsProfile)
	}
	if v20160930.JumpboxProfile != nil {
		api.JumpboxProfile = &JumpboxProfile{}
		convertV20160930JumpboxProfile(v20160930.JumpboxProfile, api.JumpboxProfile)
	}
	if v20160930.ServicePrincipalProfile != nil {
		api.ServicePrincipalProfile = &ServicePrincipalProfile{}
		convertV20160930ServicePrincipalProfile(v20160930.ServicePrincipalProfile, api.ServicePrincipalProfile)
	}
	if v20160930.CustomProfile != nil {
		api.CustomProfile = &CustomProfile{}
		convertV20160930CustomProfile(v20160930.CustomProfile, api.CustomProfile)
	}
}

func convertV20160330Properties(v20160330 *v20160330.Properties, api *Properties) {
	api.ProvisioningState = ProvisioningState(v20160330.ProvisioningState)
	if v20160330.OrchestratorProfile != nil {
		api.OrchestratorProfile = &OrchestratorProfile{}
		convertV20160330OrchestratorProfile(v20160330.OrchestratorProfile, api.OrchestratorProfile)
	}
	if v20160330.MasterProfile != nil {
		api.MasterProfile = &MasterProfile{}
		convertV20160330MasterProfile(v20160330.MasterProfile, api.MasterProfile)
	}
	api.AgentPoolProfiles = []AgentPoolProfile{}
	for _, p := range v20160330.AgentPoolProfiles {
		apiProfile := &AgentPoolProfile{}
		convertV20160330AgentPoolProfile(&p, apiProfile)
		api.AgentPoolProfiles = append(api.AgentPoolProfiles, *apiProfile)

	}
	if v20160330.LinuxProfile != nil {
		api.LinuxProfile = &LinuxProfile{}
		convertV20160330LinuxProfile(v20160330.LinuxProfile, api.LinuxProfile)
	}
	if v20160330.WindowsProfile != nil {
		api.WindowsProfile = &WindowsProfile{}
		convertV20160330WindowsProfile(v20160330.WindowsProfile, api.WindowsProfile)
	}
	if v20160330.DiagnosticsProfile != nil {
		api.DiagnosticsProfile = &DiagnosticsProfile{}
		convertV20160330DiagnosticsProfile(v20160330.DiagnosticsProfile, api.DiagnosticsProfile)
	}
	if v20160330.JumpboxProfile != nil {
		api.JumpboxProfile = &JumpboxProfile{}
		convertV20160330JumpboxProfile(v20160330.JumpboxProfile, api.JumpboxProfile)
	}
}

func convertV20170131Properties(v20170131 *v20170131.Properties, api *Properties) {
	api.ProvisioningState = ProvisioningState(v20170131.ProvisioningState)
	if v20170131.OrchestratorProfile != nil {
		api.OrchestratorProfile = &OrchestratorProfile{}
		convertV20170131OrchestratorProfile(v20170131.OrchestratorProfile, api.OrchestratorProfile)
	}
	if v20170131.MasterProfile != nil {
		api.MasterProfile = &MasterProfile{}
		convertV20170131MasterProfile(v20170131.MasterProfile, api.MasterProfile)
	}
	api.AgentPoolProfiles = []AgentPoolProfile{}
	for _, p := range v20170131.AgentPoolProfiles {
		apiProfile := &AgentPoolProfile{}
		convertV20170131AgentPoolProfile(&p, apiProfile)
		api.AgentPoolProfiles = append(api.AgentPoolProfiles, *apiProfile)
	}
	if v20170131.LinuxProfile != nil {
		api.LinuxProfile = &LinuxProfile{}
		convertV20170131LinuxProfile(v20170131.LinuxProfile, api.LinuxProfile)
	}
	if v20170131.WindowsProfile != nil {
		api.WindowsProfile = &WindowsProfile{}
		convertV20170131WindowsProfile(v20170131.WindowsProfile, api.WindowsProfile)
	}
	if v20170131.DiagnosticsProfile != nil {
		api.DiagnosticsProfile = &DiagnosticsProfile{}
		convertV20170131DiagnosticsProfile(v20170131.DiagnosticsProfile, api.DiagnosticsProfile)
	}
	if v20170131.JumpboxProfile != nil {
		api.JumpboxProfile = &JumpboxProfile{}
		convertV20170131JumpboxProfile(v20170131.JumpboxProfile, api.JumpboxProfile)
	}
	if v20170131.ServicePrincipalProfile != nil {
		api.ServicePrincipalProfile = &ServicePrincipalProfile{}
		convertV20170131ServicePrincipalProfile(v20170131.ServicePrincipalProfile, api.ServicePrincipalProfile)
	}
	if v20170131.CustomProfile != nil {
		api.CustomProfile = &CustomProfile{}
		convertV20170131CustomProfile(v20170131.CustomProfile, api.CustomProfile)
	}
}

func convertVLabsProperties(vlabs *vlabs.Properties, api *Properties) {
	api.ProvisioningState = ProvisioningState(vlabs.ProvisioningState)
	if vlabs.OrchestratorProfile != nil {
		api.OrchestratorProfile = &OrchestratorProfile{}
		convertVLabsOrchestratorProfile(vlabs.OrchestratorProfile, api.OrchestratorProfile)
	}
	if vlabs.MasterProfile != nil {
		api.MasterProfile = &MasterProfile{}
		convertVLabsMasterProfile(vlabs.MasterProfile, api.MasterProfile)
	}
	api.AgentPoolProfiles = []AgentPoolProfile{}
	for _, p := range vlabs.AgentPoolProfiles {
		apiProfile := &AgentPoolProfile{}
		convertVLabsAgentPoolProfile(&p, apiProfile)
		api.AgentPoolProfiles = append(api.AgentPoolProfiles, *apiProfile)
	}
	if vlabs.LinuxProfile != nil {
		api.LinuxProfile = &LinuxProfile{}
		convertVLabsLinuxProfile(vlabs.LinuxProfile, api.LinuxProfile)
	}
	if vlabs.WindowsProfile != nil {
		api.WindowsProfile = &WindowsProfile{}
		convertVLabsWindowsProfile(vlabs.WindowsProfile, api.WindowsProfile)
	}
	if vlabs.ServicePrincipalProfile != nil {
		api.ServicePrincipalProfile = &ServicePrincipalProfile{}
		convertVLabsServicePrincipalProfile(vlabs.ServicePrincipalProfile, api.ServicePrincipalProfile)
	}
	if vlabs.CertificateProfile != nil {
		api.CertificateProfile = &CertificateProfile{}
		convertVLabsCertificateProfile(vlabs.CertificateProfile, api.CertificateProfile)
	}
}

func convertV20160930LinuxProfile(v20160930 *v20160930.LinuxProfile, api *LinuxProfile) {
	api.AdminUsername = v20160930.AdminUsername
	api.SSH.PublicKeys = []struct {
		KeyData string `json:"keyData"`
	}{}
	for _, d := range v20160930.SSH.PublicKeys {
		api.SSH.PublicKeys = append(api.SSH.PublicKeys, d)
	}
}

func convertV20160330LinuxProfile(v20160330 *v20160330.LinuxProfile, api *LinuxProfile) {
	api.AdminUsername = v20160330.AdminUsername
	api.SSH.PublicKeys = []struct {
		KeyData string `json:"keyData"`
	}{}
	for _, d := range v20160330.SSH.PublicKeys {
		api.SSH.PublicKeys = append(api.SSH.PublicKeys, d)
	}
}

func convertV20170131LinuxProfile(v20170131 *v20170131.LinuxProfile, api *LinuxProfile) {
	api.AdminUsername = v20170131.AdminUsername
	api.SSH.PublicKeys = []struct {
		KeyData string `json:"keyData"`
	}{}
	for _, d := range v20170131.SSH.PublicKeys {
		api.SSH.PublicKeys = append(api.SSH.PublicKeys, d)
	}
}

func convertVLabsLinuxProfile(vlabs *vlabs.LinuxProfile, api *LinuxProfile) {
	api.AdminUsername = vlabs.AdminUsername
	api.SSH.PublicKeys = []struct {
		KeyData string `json:"keyData"`
	}{}
	for _, d := range vlabs.SSH.PublicKeys {
		api.SSH.PublicKeys = append(api.SSH.PublicKeys, d)
	}
	api.Secrets = []KeyVaultSecrets{}
	for _, s := range vlabs.Secrets {
		secret := &KeyVaultSecrets{}
		convertVLabsKeyVaultSecrets(&s, secret)
		api.Secrets = append(api.Secrets, *secret)
	}
}

func convertV20160930WindowsProfile(v20160930 *v20160930.WindowsProfile, api *WindowsProfile) {
	api.AdminUsername = v20160930.AdminUsername
	api.AdminPassword = v20160930.AdminPassword
}

func convertV20160330WindowsProfile(v20160330 *v20160330.WindowsProfile, api *WindowsProfile) {
	api.AdminUsername = v20160330.AdminUsername
	api.AdminPassword = v20160330.AdminPassword
}

func convertV20170131WindowsProfile(v20170131 *v20170131.WindowsProfile, api *WindowsProfile) {
	api.AdminUsername = v20170131.AdminUsername
	api.AdminPassword = v20170131.AdminPassword
}

func convertVLabsWindowsProfile(vlabs *vlabs.WindowsProfile, api *WindowsProfile) {
	api.AdminUsername = vlabs.AdminUsername
	api.AdminPassword = vlabs.AdminPassword
	api.Secrets = []KeyVaultSecrets{}
	for _, s := range vlabs.Secrets {
		secret := &KeyVaultSecrets{}
		convertVLabsKeyVaultSecrets(&s, secret)
		api.Secrets = append(api.Secrets, *secret)
	}
}

func convertV20160930OrchestratorProfile(v20160930 *v20160930.OrchestratorProfile, api *OrchestratorProfile) {
	api.OrchestratorType = OrchestratorType(v20160930.OrchestratorType)
}

func convertV20160330OrchestratorProfile(v20160330 *v20160330.OrchestratorProfile, api *OrchestratorProfile) {
	api.OrchestratorType = OrchestratorType(v20160330.OrchestratorType)
}

func convertV20170131OrchestratorProfile(v20170131 *v20170131.OrchestratorProfile, api *OrchestratorProfile) {
	api.OrchestratorType = OrchestratorType(v20170131.OrchestratorType)
}

func convertVLabsOrchestratorProfile(vlabs *vlabs.OrchestratorProfile, api *OrchestratorProfile) {
	api.OrchestratorType = OrchestratorType(vlabs.OrchestratorType)
	if api.OrchestratorType == Kubernetes && vlabs.KubernetesConfig != nil {
		api.KubernetesConfig = &KubernetesConfig{}
		convertVLabsKubernetesConfig(vlabs.KubernetesConfig, api.KubernetesConfig)
	}
}

func convertVLabsKubernetesConfig(vlabs *vlabs.KubernetesConfig, api *KubernetesConfig) {
	api.KubernetesImageBase = vlabs.KubernetesImageBase
	api.NetworkPolicy = vlabs.NetworkPolicy
	api.ClusterCIDR = vlabs.ClusterCidr
	api.DnsServiceIP = vlabs.DnsServiceIP
	api.ServiceCIDR = vlabs.ServiceCidr
}

func convertV20160930MasterProfile(v20160930 *v20160930.MasterProfile, api *MasterProfile) {
	api.Count = v20160930.Count
	api.DNSPrefix = v20160930.DNSPrefix
	api.FQDN = v20160930.FQDN
	api.Subnet = v20160930.GetSubnet()
	// Set default VMSize
	api.VMSize = "Standard_D2_v2"
}

func convertV20160330MasterProfile(v20160330 *v20160330.MasterProfile, api *MasterProfile) {
	api.Count = v20160330.Count
	api.DNSPrefix = v20160330.DNSPrefix
	api.FQDN = v20160330.FQDN
	api.Subnet = v20160330.GetSubnet()
	// Set default VMSize
	api.VMSize = "Standard_D2_v2"
}

func convertV20170131MasterProfile(v20170131 *v20170131.MasterProfile, api *MasterProfile) {
	api.Count = v20170131.Count
	api.DNSPrefix = v20170131.DNSPrefix
	api.FQDN = v20170131.FQDN
	api.Subnet = v20170131.GetSubnet()
	// Set default VMSize
	// TODO: Use azureconst.go to set
	api.VMSize = "Standard_D2_v2"
}

func convertVLabsMasterProfile(vlabs *vlabs.MasterProfile, api *MasterProfile) {
	api.Count = vlabs.Count
	api.DNSPrefix = vlabs.DNSPrefix
	api.VMSize = vlabs.VMSize
	api.VnetSubnetID = vlabs.VnetSubnetID
	api.FirstConsecutiveStaticIP = vlabs.FirstConsecutiveStaticIP
	api.Subnet = vlabs.GetSubnet()
	api.IPAddressCount = vlabs.IPAddressCount
	api.FQDN = vlabs.FQDN
}

func convertV20160930AgentPoolProfile(v20160930 *v20160930.AgentPoolProfile, api *AgentPoolProfile) {
	api.Name = v20160930.Name
	api.Count = v20160930.Count
	api.VMSize = v20160930.VMSize
	api.DNSPrefix = v20160930.DNSPrefix
	if api.DNSPrefix != "" {
		// Set default Ports when DNSPrefix specified
		api.Ports = []int{80, 443, 8080}
	}
	api.FQDN = v20160930.FQDN
	api.OSType = OSType(v20160930.OSType)
	api.Subnet = v20160930.GetSubnet()
}

func convertV20160330AgentPoolProfile(v20160330 *v20160330.AgentPoolProfile, api *AgentPoolProfile) {
	api.Name = v20160330.Name
	api.Count = v20160330.Count
	api.VMSize = v20160330.VMSize
	api.DNSPrefix = v20160330.DNSPrefix
	if api.DNSPrefix != "" {
		// Set default Ports when DNSPrefix specified
		api.Ports = []int{80, 443, 8080}
	}
	api.FQDN = v20160330.FQDN
	api.OSType = OSType(v20160330.OSType)
	api.Subnet = v20160330.GetSubnet()
}

func convertV20170131AgentPoolProfile(v20170131 *v20170131.AgentPoolProfile, api *AgentPoolProfile) {
	api.Name = v20170131.Name
	api.Count = v20170131.Count
	api.VMSize = v20170131.VMSize
	api.DNSPrefix = v20170131.DNSPrefix
	if api.DNSPrefix != "" {
		// Set default Ports when DNSPrefix specified
		api.Ports = []int{80, 443, 8080}
	}
	api.FQDN = v20170131.FQDN
	api.OSType = OSType(v20170131.OSType)
	api.Subnet = v20170131.GetSubnet()
}

func convertVLabsAgentPoolProfile(vlabs *vlabs.AgentPoolProfile, api *AgentPoolProfile) {
	api.Name = vlabs.Name
	api.Count = vlabs.Count
	api.VMSize = vlabs.VMSize
	api.DNSPrefix = vlabs.DNSPrefix
	api.OSType = OSType(vlabs.OSType)
	api.Ports = []int{}
	api.Ports = append(api.Ports, vlabs.Ports...)
	api.AvailabilityProfile = vlabs.AvailabilityProfile
	api.StorageProfile = vlabs.StorageProfile
	api.DiskSizesGB = []int{}
	api.DiskSizesGB = append(api.DiskSizesGB, vlabs.DiskSizesGB...)
	api.VnetSubnetID = vlabs.VnetSubnetID
	api.Subnet = vlabs.GetSubnet()
	api.IPAddressCount = vlabs.IPAddressCount
	api.FQDN = vlabs.FQDN
	api.CustomNodeLabels = map[string]string{}
	for k, v := range vlabs.CustomNodeLabels {
		api.CustomNodeLabels[k] = v
	}
}

func convertVLabsKeyVaultSecrets(vlabs *vlabs.KeyVaultSecrets, api *KeyVaultSecrets) {
	api.SourceVault = &KeyVaultID{ID: vlabs.SourceVault.ID}
	api.VaultCertificates = []KeyVaultCertificate{}
	for _, c := range vlabs.VaultCertificates {
		cert := KeyVaultCertificate{}
		cert.CertificateStore = c.CertificateStore
		cert.CertificateURL = c.CertificateURL
		api.VaultCertificates = append(api.VaultCertificates, cert)
	}
}

func convertV20160930DiagnosticsProfile(v20160930 *v20160930.DiagnosticsProfile, api *DiagnosticsProfile) {
	if v20160930.VMDiagnostics != nil {
		api.VMDiagnostics = &VMDiagnostics{}
		convertV20160930VMDiagnostics(v20160930.VMDiagnostics, api.VMDiagnostics)
	}
}

func convertV20160930VMDiagnostics(v20160930 *v20160930.VMDiagnostics, api *VMDiagnostics) {
	api.Enabled = v20160930.Enabled
	api.StorageURL = v20160930.StorageURL
}

func convertV20160330DiagnosticsProfile(v20160330 *v20160330.DiagnosticsProfile, api *DiagnosticsProfile) {
	if v20160330.VMDiagnostics != nil {
		api.VMDiagnostics = &VMDiagnostics{}
		convertV20160330VMDiagnostics(v20160330.VMDiagnostics, api.VMDiagnostics)
	}
}

func convertV20160330VMDiagnostics(v20160330 *v20160330.VMDiagnostics, api *VMDiagnostics) {
	api.Enabled = v20160330.Enabled
	api.StorageURL = v20160330.StorageURL
}

func convertV20170131DiagnosticsProfile(v20170131 *v20170131.DiagnosticsProfile, api *DiagnosticsProfile) {
	if v20170131.VMDiagnostics != nil {
		api.VMDiagnostics = &VMDiagnostics{}
		convertV20170131VMDiagnostics(v20170131.VMDiagnostics, api.VMDiagnostics)
	}
}

func convertV20170131VMDiagnostics(v20170131 *v20170131.VMDiagnostics, api *VMDiagnostics) {
	api.Enabled = v20170131.Enabled
	api.StorageURL = v20170131.StorageURL
}

func convertV20160930JumpboxProfile(v20160930 *v20160930.JumpboxProfile, api *JumpboxProfile) {
	api.OSType = OSType(v20160930.OSType)
	api.DNSPrefix = v20160930.DNSPrefix
	api.FQDN = v20160930.FQDN
}

func convertV20160330JumpboxProfile(v20160330 *v20160330.JumpboxProfile, api *JumpboxProfile) {
	api.OSType = OSType(v20160330.OSType)
	api.DNSPrefix = v20160330.DNSPrefix
	api.FQDN = v20160330.FQDN
}

func convertV20170131JumpboxProfile(v20170131 *v20170131.JumpboxProfile, api *JumpboxProfile) {
	api.OSType = OSType(v20170131.OSType)
	api.DNSPrefix = v20170131.DNSPrefix
	api.FQDN = v20170131.FQDN
}

func convertV20160930ServicePrincipalProfile(v20160930 *v20160930.ServicePrincipalProfile, api *ServicePrincipalProfile) {
	api.ClientID = v20160930.ClientID
	api.Secret = v20160930.Secret
}

func convertV20170131ServicePrincipalProfile(v20170131 *v20170131.ServicePrincipalProfile, api *ServicePrincipalProfile) {
	api.ClientID = v20170131.ClientID
	api.Secret = v20170131.Secret
}

func convertVLabsServicePrincipalProfile(vlabs *vlabs.ServicePrincipalProfile, api *ServicePrincipalProfile) {
	api.ClientID = vlabs.ClientID
	api.Secret = vlabs.Secret
}

func convertV20160930CustomProfile(v20160930 *v20160930.CustomProfile, api *CustomProfile) {
	api.Orchestrator = v20160930.Orchestrator
}

func convertV20170131CustomProfile(v20170131 *v20170131.CustomProfile, api *CustomProfile) {
	api.Orchestrator = v20170131.Orchestrator
}

func convertVLabsCertificateProfile(vlabs *vlabs.CertificateProfile, api *CertificateProfile) {
	api.CaCertificate = vlabs.CaCertificate
	api.APIServerCertificate = vlabs.APIServerCertificate
	api.APIServerPrivateKey = vlabs.APIServerPrivateKey
	api.ClientCertificate = vlabs.ClientCertificate
	api.ClientPrivateKey = vlabs.ClientPrivateKey
	api.KubeConfigCertificate = vlabs.KubeConfigCertificate
	api.KubeConfigPrivateKey = vlabs.KubeConfigPrivateKey
	api.SetCAPrivateKey(vlabs.GetCAPrivateKey())
}


text:
using System;

namespace ExactProductOfRealNumbers
{
	class ExactProductOfRealNumbers
	{
		public static void Main(string[] args)
		{
			int n = int.Parse(Console.ReadLine());

			decimal product = 1;

			for (int i = 0; i < n; i++)
			{
				product *= decimal.Parse(Console.ReadLine());
			}
				Console.WriteLine(product);

			}
		}
	}


text:
@protocol AudioVisualizerViewControllerDelegate
- (void) fileWasTrimmed:(NSURL *)u;
@end

@interface AudioVisualizerViewController : ARISViewController
- (id) initWithAudioURL:(NSURL *)u delegate:(id<AudioVisualizerViewControllerDelegate>)d;
@end


text:
package org.jetbrains.idea.svn.history;

import com.intellij.openapi.vcs.FilePath;
import com.intellij.openapi.vcs.VcsException;
import com.intellij.openapi.vcs.changes.BinaryContentRevision;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.idea.svn.SvnVcs;

/**
 * @author yole
 */
public class SvnRepositoryBinaryContentRevision extends SvnRepositoryContentRevision implements BinaryContentRevision {
  public SvnRepositoryBinaryContentRevision(@NotNull SvnVcs vcs, @NotNull FilePath remotePath, @Nullable FilePath localPath, long revision) {
    super(vcs, remotePath, localPath, revision);
  }

  @Nullable
  public byte[] getBinaryContent() throws VcsException {
    return getContentAsBytes();
  }
}


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

	<ImageView
			android:layout_width="60dp"
			android:layout_marginTop="20dp"
			android:layout_marginBottom="20dp"
			android:src="@drawable/default_avatar"
			android:layout_gravity="center_horizontal"
			android:layout_height="60dp" />

	<EditText
			android:id="@+id/et_username"
			android:layout_width="match_parent"
			android:layout_margin="10dp"
			android:textColor="#000"
			android:hint="用户名"
			android:inputType="text"
			android:layout_height="50dp" />

	<EditText
			android:id="@+id/et_password"
			android:layout_width="match_parent"
			android:layout_margin="10dp"
			android:textColor="#000"
			android:inputType="numberPassword"
			android:hint="密码"
			android:layout_height="50dp" />

	<Button
			android:id="@+id/bt_login"
			android:layout_width="match_parent"
			android:textSize="20sp"
			android:layout_margin="10dp"
			android:background="@drawable/login_btn_selector"
			android:textColor="#fff"
			android:text="登陆"
			android:layout_height="wrap_content" />

	<TextView
			android:id="@+id/tv_regist"
			android:layout_width="wrap_content"
			android:textColor="@color/mainColor"
			android:layout_gravity="right"
			android:layout_marginRight="20dp"
			android:text="新用户"
			android:layout_marginTop="30dp"
			android:layout_height="wrap_content" />

</LinearLayout>