text:
/* --------------------------------
Horizontal Timeline
-------------------------------- */
@-webkit-keyframes 'cd-enter-right' {
  0% {
    opacity : 0;
    -webkit-transform : translateX(-100%);
  }
  100% {
    opacity : 1;
    -webkit-transform : translateX(0%);
  }
}

@-moz-keyframes 'cd-enter-right' {
  0% {
    opacity : 0;
    -moz-transform : translateX(-100%);
  }
  100% {
    opacity : 1;
    -moz-transform : translateX(0%);
  }
}

@-o-keyframes 'cd-enter-right' {
  0% {
    opacity : 0;
    -o-transform : translateX(-100%);
       transform : translateX(-100%);
  }
  100% {
    opacity : 1;
    -o-transform : translateX(0%);
       transform : translateX(0%);
  }
}

@keyframes 'cd-enter-right' {
  0% {
    opacity : 0;
    -webkit-transform : translateX(-100%);
       -moz-transform : translateX(-100%);
         -o-transform : translateX(-100%);
            transform : translateX(-100%);
  }
  100% {
    opacity : 1;
    -webkit-transform : translateX(0%);
       -moz-transform : translateX(0%);
         -o-transform : translateX(0%);
            transform : translateX(0%);
  }
}

@-webkit-keyframes 'cd-enter-left' {
  0% {
    opacity : 0;
    -webkit-transform : translateX(100%);
  }
  100% {
    opacity : 1;
    -webkit-transform : translateX(0%);
  }
}

@-moz-keyframes 'cd-enter-left' {
  0% {
    opacity : 0;
    -moz-transform : translateX(100%);
  }
  100% {
    opacity : 1;
    -moz-transform : translateX(0%);
  }
}

@-o-keyframes 'cd-enter-left' {
  0% {
    opacity : 0;
    -o-transform : translateX(100%);
       transform : translateX(100%);
  }
  100% {
    opacity : 1;
    -o-transform : translateX(0%);
       transform : translateX(0%);
  }
}

@keyframes 'cd-enter-left' {
  0% {
    opacity : 0;
    -webkit-transform : translateX(100%);
       -moz-transform : translateX(100%);
         -o-transform : translateX(100%);
            transform : translateX(100%);
  }
  100% {
    opacity : 1;
    -webkit-transform : translateX(0%);
       -moz-transform : translateX(0%);
         -o-transform : translateX(0%);
            transform : translateX(0%);
  }
}

.cd-horizontal-timeline {
  opacity : 0;
  margin : 2em auto;
  -webkit-transition : opacity 0.2s;
       -o-transition : opacity 0.2s;
     -moz-transition : opacity 0.2s;
          transition : opacity 0.2s;
}
.cd-horizontal-timeline ol, .cd-horizontal-timeline ul {
  list-style : none;
}
.cd-horizontal-timeline::before {
  content : 'mobile';
  display : none;
}
.cd-horizontal-timeline .timeline {
  position : relative;
  height : 100px;
  width : 90%;
  max-width : 800px;
  margin : 0 auto;
}
.cd-horizontal-timeline .events-wrapper {
  position : relative;
  height : 100%;
  margin : 0 40px;
  overflow : hidden;
}
.cd-horizontal-timeline .events-wrapper::after {
  content : '';
  position : absolute;
  z-index : 2;
  top : 0;
  height : 100%;
  width : 20px;
  left : 0;
}
.cd-horizontal-timeline .events-wrapper::before {
  content : '';
  position : absolute;
  z-index : 2;
  top : 0;
  height : 100%;
  width : 20px;
  right : 0;
}
.cd-horizontal-timeline .events {
  position : absolute;
  z-index : 1;
  right : 0;
  top : 39px;
  height : 2px;
  background : #DFDFDF;
  -webkit-transition : -webkit-transform 0.4s;
          transition : -webkit-transform 0.4s;
       -o-transition :      -o-transform 0.4s;
     -moz-transition :         transform 0.4s, -moz-transform 0.4s;
          transition :         transform 0.4s;
          transition :         transform 0.4s, -webkit-transform 0.4s, -moz-transform 0.4s, -o-transform 0.4s;
}
.cd-horizontal-timeline .events a {
  position : absolute;
  bottom : 0;
  z-index : 2;
  text-align : center;
  font-size : 1.3rem;
  padding-bottom : 15px;
  color : #383838;
  -webkit-transform : translateZ(0);
     -moz-transform : translateZ(0);
          transform : translateZ(0);
}
.cd-horizontal-timeline .events a::after {
  content : '';
  position : absolute;
  right : 50%;
  left : auto;
  -webkit-transform : translateX(50%);
     -moz-transform : translateX(50%);
      -ms-transform : translateX(50%);
       -o-transform : translateX(50%);
          transform : translateX(50%);
  bottom : -5px;
  height : 12px;
  width : 12px;
  border-radius : 50%;
  border : 2px solid #DFDFDF;
  background-color : #F8F8F8;
  -webkit-transition : background-color 0.3s, border-color 0.3s;
       -o-transition : background-color 0.3s, border-color 0.3s;
     -moz-transition : background-color 0.3s, border-color 0.3s;
          transition : background-color 0.3s, border-color 0.3s;
}
.cd-horizontal-timeline .events a.selected {
  pointer-events : none;
}
.cd-horizontal-timeline .events a.selected::after {
  background-color : #00B5B8;
  border-color : #00B5B8;
}
.cd-horizontal-timeline .events a.older-event::after {
  border-color : #00B5B8;
}
.cd-horizontal-timeline .filling-line {
  position : absolute;
  z-index : 1;
  right : 0;
  top : 0;
  height : 100%;
  width : 100%;
  background-color : #00B5B8;
  -webkit-transform : scaleX(0);
     -moz-transform : scaleX(0);
      -ms-transform : scaleX(0);
       -o-transform : scaleX(0);
          transform : scaleX(0);
  -webkit-transform-origin : right center;
     -moz-transform-origin : right center;
      -ms-transform-origin : right center;
       -o-transform-origin : right center;
          transform-origin : right center;
  -webkit-transition : -webkit-transform 0.3s;
          transition : -webkit-transform 0.3s;
       -o-transition :      -o-transform 0.3s;
     -moz-transition :         transform 0.3s, -moz-transform 0.3s;
          transition :         transform 0.3s;
          transition :         transform 0.3s, -webkit-transform 0.3s, -moz-transform 0.3s, -o-transform 0.3s;
}
.cd-horizontal-timeline .events-content {
  position : relative;
  width : 100%;
  margin : 2em 0;
  overflow : hidden;
  -webkit-transition : height 0.4s;
       -o-transition : height 0.4s;
     -moz-transition : height 0.4s;
          transition : height 0.4s;
}
.cd-horizontal-timeline .events-content li {
  position : absolute;
  z-index : 1;
  width : 100%;
  right : 0;
  top : 0;
  -webkit-transform : translateX(100%);
     -moz-transform : translateX(100%);
      -ms-transform : translateX(100%);
       -o-transform : translateX(100%);
          transform : translateX(100%);
  padding : 0 5%;
  opacity : 0;
  -webkit-animation-duration : 0.4s;
     -moz-animation-duration : 0.4s;
       -o-animation-duration : 0.4s;
          animation-duration : 0.4s;
  -webkit-animation-timing-function : ease-in-out;
     -moz-animation-timing-function : ease-in-out;
       -o-animation-timing-function : ease-in-out;
          animation-timing-function : ease-in-out;
}
.cd-horizontal-timeline .events-content li > * {
  max-width : 800px;
  margin : 0 auto;
}
.cd-horizontal-timeline .events-content li.selected {
  position : relative;
  z-index : 2;
  opacity : 1;
  -webkit-transform : translateX(0);
     -moz-transform : translateX(0);
      -ms-transform : translateX(0);
       -o-transform : translateX(0);
          transform : translateX(0);
}
.cd-horizontal-timeline .events-content li.enter-right {
  -webkit-animation-name : cd-enter-right;
     -moz-animation-name : cd-enter-right;
       -o-animation-name : cd-enter-right;
          animation-name : cd-enter-right;
}
.cd-horizontal-timeline .events-content li.leave-right {
  -webkit-animation-name : cd-enter-right;
     -moz-animation-name : cd-enter-right;
       -o-animation-name : cd-enter-right;
          animation-name : cd-enter-right;
  -webkit-animation-direction : reverse;
     -moz-animation-direction : reverse;
       -o-animation-direction : reverse;
          animation-direction : reverse;
}
.cd-horizontal-timeline .events-content li.enter-left {
  -webkit-animation-name : cd-enter-left;
     -moz-animation-name : cd-enter-left;
       -o-animation-name : cd-enter-left;
          animation-name : cd-enter-left;
}
.cd-horizontal-timeline .events-content li.leave-left {
  -webkit-animation-name : cd-enter-left;
     -moz-animation-name : cd-enter-left;
       -o-animation-name : cd-enter-left;
          animation-name : cd-enter-left;
  -webkit-animation-direction : reverse;
     -moz-animation-direction : reverse;
       -o-animation-direction : reverse;
          animation-direction : reverse;
}

.cd-horizontal-timeline.loaded {
  opacity : 1;
}

.no-touch .cd-horizontal-timeline .events a:hover::after {
  background-color : #00B5B8;
  border-color : #00B5B8;
}

.no-touch .cd-timeline-navigation a:hover {
  border-color : #00B5B8;
}

.no-touch .cd-timeline-navigation a.inactive:hover {
  border-color : #DFDFDF;
}

.cd-timeline-navigation a {
  position : absolute;
  z-index : 1;
  top : 50%;
  bottom : auto;
  -webkit-transform : translateY(-50%);
     -moz-transform : translateY(-50%);
      -ms-transform : translateY(-50%);
       -o-transform : translateY(-50%);
          transform : translateY(-50%);
  height : 34px;
  width : 34px;
  border-radius : 50%;
  border : 2px solid #DFDFDF;
  overflow : hidden;
  color : transparent;
  text-indent : 100%;
  white-space : nowrap;
  -webkit-transition : border-color 0.3s;
       -o-transition : border-color 0.3s;
     -moz-transition : border-color 0.3s;
          transition : border-color 0.3s;
}
.cd-timeline-navigation a::after {
  content : '';
  position : absolute;
  height : 16px;
  width : 16px;
  right : 50%;
  top : 50%;
  bottom : auto;
  left : auto;
  -webkit-transform : translateX(50%) translateY(-50%);
     -moz-transform : translateX(50%) translateY(-50%);
      -ms-transform : translateX(50%) translateY(-50%);
       -o-transform : translateX(50%) translateY(-50%);
          transform : translateX(50%) translateY(-50%);
  background : url(../../images/svg/cd-arrow.svg) no-repeat 100% 0;
}

.cd-timeline-navigation a.prev {
  right : 0;
  -webkit-transform : translateY(-50%) rotate(-180deg);
     -moz-transform : translateY(-50%) rotate(-180deg);
      -ms-transform : translateY(-50%) rotate(-180deg);
       -o-transform : translateY(-50%) rotate(-180deg);
          transform : translateY(-50%) rotate(-180deg);
}

.cd-timeline-navigation a.next {
  left : 0;
}

.cd-timeline-navigation a.inactive {
  cursor : not-allowed;
}
.cd-timeline-navigation a.inactive::after {
  background-position : 100% -16px;
}

@media only screen and (min-width: 1100px) {
  .cd-horizontal-timeline::before {
    content : 'desktop';
  }
}

@media only screen and (min-width: 768px) {
  .cd-horizontal-timeline .events-content h2 {
    font-size : 4rem;
    font-weight : 800;
  }
  .cd-horizontal-timeline .events-content em {
    font-size : 1.5rem;
  }
}

/* Timeline */
.timeline {
  position : relative;
  display : block;
  margin : 0;
  padding : 10px 0;
  list-style : none;
}
.timeline:after {
  content : ' ';
  display : table;
  clear : both;
}
.timeline:before {
  content : ' ';
  display : table;
}
.timeline > li {
  list-style : none;
}
.timeline > li:nth-child(even) {
  float : right;
  clear : right;
}
.timeline > li:nth-child(odd) {
  float : left;
  clear : left;
}
.timeline .media {
  border-bottom : 1px solid #EEEEEE;
  font-size : 13px;
}
.timeline .media p {
  font-size : 13px;
}
.timeline .media:last-child {
  border-bottom : 0;
}

.timeline-line + .timeline-item {
  margin-top : -20px;
}

.timeline-group {
  display : block;
  position : relative;
  margin : 20px 0;
  text-align : center;
  float : none !important;
  z-index : 1;
}

.timeline-poster {
  margin-top : -20px;
}
.timeline-poster .btn-link {
  color : #A1AAB0;
}
.timeline-poster .btn-link:active {
  color : #3E5771;
}
.timeline-poster .btn-link:focus {
  color : #3E5771;
}
.timeline-poster .btn-link:hover {
  color : #3E5771;
}
.timeline-poster .btn-link.active {
  color : #3E5771;
}

#timeline.timeline-center .timeline-line {
  display : inline-block;
  position : absolute;
  top : 0;
  bottom : 0;
  right : 50%;
  width : 4px;
  background-color : #DDDDDD;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
}

#timeline.timeline-center .timeline-item {
  position : relative;
  display : inline-block;
  width : 50%;
  padding : 0 50px 35px;
}
#timeline.timeline-center .timeline-item:nth-child(even) {
  padding : 0 0 50px 35px;
}
#timeline.timeline-center .timeline-item:nth-child(even):after {
  content : '';
  position : absolute;
  left : 19px;
  top : 10px;
  width : 0;
  height : 0;
  border-top : 12px solid transparent;
  border-bottom : 12px solid transparent;
  border-right : 12px solid #CCCCCC;
  z-index : 1;
  left : 25px;
  top : 21px;
  border-top : 11px solid transparent;
  border-bottom : 11px solid transparent;
  border-right : 11px solid #FFFFFF;
}
#timeline.timeline-center .timeline-item:nth-child(even):before {
  content : '';
  position : absolute;
  left : 24px;
  top : 20px;
  width : 0;
  height : 0;
  border-top : 12px solid transparent;
  border-bottom : 12px solid transparent;
  border-right : 12px solid #CCCCCC;
  z-index : 1;
}
#timeline.timeline-center .timeline-item:nth-child(even) > .timeline-badge {
  left : -20px;
}
#timeline.timeline-center .timeline-item:nth-child(odd) {
  padding : 0 35px 50px 0;
}
#timeline.timeline-center .timeline-item:nth-child(odd):after {
  content : '';
  position : absolute;
  right : 19px;
  top : 10px;
  width : 0;
  height : 0;
  border-top : 12px solid transparent;
  border-bottom : 12px solid transparent;
  border-left : 12px solid #CCCCCC;
  z-index : 1;
  right : 25px;
  top : 21px;
  border-top : 11px solid transparent;
  border-bottom : 11px solid transparent;
  border-left : 11px solid #FFFFFF;
}
#timeline.timeline-center .timeline-item:nth-child(odd):before {
  content : '';
  position : absolute;
  right : 24px;
  top : 20px;
  width : 0;
  height : 0;
  border-top : 12px solid transparent;
  border-bottom : 12px solid transparent;
  border-left : 12px solid #CCCCCC;
  z-index : 1;
}
#timeline.timeline-center .timeline-item:nth-child(odd) > .timeline-badge {
  right : -20px;
}
#timeline.timeline-center .timeline-item > .timeline-badge {
  position : absolute;
  top : 12px;
  z-index : 1;
}
#timeline.timeline-center .timeline-item > .timeline-badge > span {
  display : inline-block;
  width : 40px;
  height : 40px;
  border-radius : 50%;
  text-align : center;
  text-decoration : none;
  -webkit-transition : all ease 0.3s;
       -o-transition : all ease 0.3s;
     -moz-transition : all ease 0.3s;
          transition : all ease 0.3s;
}
#timeline.timeline-center .timeline-item > .timeline-badge > span i {
  color : #FFFFFF;
  font-size : 1.6rem;
  display : block;
  line-height : 40px;
  top : 0;
}
#timeline.timeline-center .timeline-item > .timeline-badge > span:active {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-center .timeline-item > .timeline-badge > span:focus {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-center .timeline-item > .timeline-badge > span:hover {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-center .timeline-item > .timeline-badge > a.active {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-center .timeline-item > .timeline-panel {
  position : relative;
  background-color : #FFFFFF;
  border : 1px solid #DDDDDD;
  border-radius : 4px;
}
#timeline.timeline-center .timeline-item > .timeline-panel:hover .timeline-actions {
  display : block;
}

#timeline.timeline-right .timeline-line {
  display : inline-block;
  position : absolute;
  top : 0;
  bottom : 0;
  left : 12px;
  width : 4px;
  background-color : #DDDDDD;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
}

#timeline.timeline-right .timeline-group {
  text-align : left;
}

#timeline.timeline-right .timeline-item {
  position : relative;
  display : inline-block;
  width : 100%;
  padding : 0 0 35px 43px;
}
#timeline.timeline-right .timeline-item:after {
  content : '';
  position : absolute;
  left : 33px;
  top : 21px;
  width : 0;
  height : 0;
  z-index : 1;
  border-top : 11px solid transparent;
  border-bottom : 11px solid transparent;
  border-right : 11px solid #FFFFFF;
}
#timeline.timeline-right .timeline-item:before {
  content : '';
  position : absolute;
  left : 32px;
  top : 20px;
  width : 0;
  height : 0;
  border-top : 12px solid transparent;
  border-bottom : 12px solid transparent;
  border-right : 12px solid #CCCCCC;
  z-index : 1;
}
#timeline.timeline-right .timeline-item > .timeline-badge {
  left : -8px;
}
#timeline.timeline-right .timeline-item > .timeline-badge {
  position : absolute;
  top : 12px;
  z-index : 1;
}
#timeline.timeline-right .timeline-item > .timeline-badge > span {
  display : inline-block;
  width : 40px;
  height : 40px;
  border-radius : 50%;
  text-align : center;
  text-decoration : none;
  -webkit-transition : all ease 0.3s;
       -o-transition : all ease 0.3s;
     -moz-transition : all ease 0.3s;
          transition : all ease 0.3s;
}
#timeline.timeline-right .timeline-item > .timeline-badge > span i {
  color : #FFFFFF;
  font-size : 1.6rem;
  display : block;
  line-height : 40px;
  top : 0;
}
#timeline.timeline-right .timeline-item > .timeline-badge > span:active {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-right .timeline-item > .timeline-badge > span:focus {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-right .timeline-item > .timeline-badge > span:hover {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-right .timeline-item > .timeline-badge > a.active {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-right .timeline-item > .timeline-panel {
  position : relative;
  background-color : #FFFFFF;
  border : 1px solid #DDDDDD;
  border-radius : 4px;
}
#timeline.timeline-right .timeline-item > .timeline-panel:hover .timeline-actions {
  display : block;
}

#timeline.timeline-right .timeline-item.block:nth-child(even):before {
  left : 8px;
  right : auto;
}

#timeline.timeline-right .timeline-item.block:nth-child(even):after {
  left : 11px;
  right : auto;
}

#timeline.timeline-right .timeline-item.block:nth-child(odd):after {
  left : 8px;
  left : auto;
}

#timeline.timeline-left .timeline-line {
  display : inline-block;
  position : absolute;
  top : 0;
  bottom : 0;
  right : 12px;
  width : 4px;
  background-color : #DDDDDD;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
}

#timeline.timeline-left .timeline-group {
  text-align : right;
}

#timeline.timeline-left .timeline-item {
  position : relative;
  display : inline-block;
  width : 100%;
  padding : 0 43px 35px 0;
}
#timeline.timeline-left .timeline-item:after {
  content : '';
  position : absolute;
  right : 33px;
  top : 21px;
  width : 0;
  height : 0;
  z-index : 1;
  border-top : 11px solid transparent;
  border-bottom : 11px solid transparent;
  border-left : 11px solid #FFFFFF;
}
#timeline.timeline-left .timeline-item:before {
  content : '';
  position : absolute;
  right : 32px;
  top : 20px;
  width : 0;
  height : 0;
  border-top : 12px solid transparent;
  border-bottom : 12px solid transparent;
  border-left : 12px solid #CCCCCC;
  z-index : 1;
}
#timeline.timeline-left .timeline-item > .timeline-badge {
  right : -8px;
}
#timeline.timeline-left .timeline-item > .timeline-badge {
  position : absolute;
  top : 12px;
  z-index : 1;
}
#timeline.timeline-left .timeline-item > .timeline-badge > span {
  display : inline-block;
  width : 40px;
  height : 40px;
  border-radius : 50%;
  text-align : center;
  text-decoration : none;
  -webkit-transition : all ease 0.3s;
       -o-transition : all ease 0.3s;
     -moz-transition : all ease 0.3s;
          transition : all ease 0.3s;
}
#timeline.timeline-left .timeline-item > .timeline-badge > span i {
  color : #FFFFFF;
  font-size : 1.6rem;
  display : block;
  line-height : 40px;
  top : 0;
}
#timeline.timeline-left .timeline-item > .timeline-badge > span:active {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-left .timeline-item > .timeline-badge > span:focus {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-left .timeline-item > .timeline-badge > span:hover {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-left .timeline-item > .timeline-badge > a.active {
  -webkit-transform : scale(1.1);
     -moz-transform : scale(1.1);
      -ms-transform : scale(1.1);
       -o-transform : scale(1.1);
          transform : scale(1.1);
}
#timeline.timeline-left .timeline-item > .timeline-panel {
  position : relative;
  background-color : #FFFFFF;
  border : 1px solid #DDDDDD;
  border-radius : 4px;
}
#timeline.timeline-left .timeline-item > .timeline-panel:hover .timeline-actions {
  display : block;
}

#timeline .timeline-item.block:nth-child(even) {
  width : 100% !important;
  margin-top : 5px;
}
#timeline .timeline-item.block:nth-child(even):after {
  right : 50%;
  left : auto;
  top : -11px;
  border : 0;
  border-right : 12px solid transparent;
  border-left : 12px solid transparent;
  border-bottom : 12px solid #CCCCCC;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
  top : -10px;
  border : 0;
  border-right : 11px solid transparent;
  border-left : 11px solid transparent;
  border-bottom : 11px solid #FFFFFF;
}
#timeline .timeline-item.block:nth-child(even):before {
  right : 50%;
  left : auto;
  top : -11px;
  border : 0;
  border-right : 12px solid transparent;
  border-left : 12px solid transparent;
  border-bottom : 12px solid #CCCCCC;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
}
#timeline .timeline-item.block:nth-child(even) > .timeline-badge {
  top : -28px;
  right : 50%;
  left : auto;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
}

#timeline .timeline-item.block:nth-child(odd) {
  width : 100% !important;
  margin-top : 5px;
}
#timeline .timeline-item.block:nth-child(odd):after {
  right : 50%;
  left : auto;
  top : -11px;
  border : 0;
  border-right : 12px solid transparent;
  border-left : 12px solid transparent;
  border-bottom : 12px solid #CCCCCC;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
  top : -10px;
  border : 0;
  border-right : 11px solid transparent;
  border-left : 11px solid transparent;
  border-bottom : 11px solid #FFFFFF;
}
#timeline .timeline-item.block:nth-child(odd):before {
  right : 50%;
  left : auto;
  top : -11px;
  border : 0;
  border-right : 12px solid transparent;
  border-left : 12px solid transparent;
  border-bottom : 12px solid #CCCCCC;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
}
#timeline .timeline-item.block:nth-child(odd) > .timeline-badge {
  top : -28px;
  right : 50%;
  left : auto;
  -webkit-transform : translate(50%, 0);
     -moz-transform : translate(50%, 0);
      -ms-transform : translate(50%, 0);
       -o-transform : translate(50%, 0);
          transform : translate(50%, 0);
}

.timeline-actions {
  display : none;
}

.timeline-content {
  padding : 15px;
}

.timeline-footer {
  padding : 15px;
  border-top : 1px solid #EEEEEE;
  background-color : #FBFCFC;
  border-radius : 0 0 5px 5px;
}

.timeline-heading {
  padding : 15px;
  font-size : 20px;
}

.timeline-liveliness {
  padding : 15px;
  border-top : 1px solid #EEEEEE;
  background-color : #FBFCFC;
}

.timeline-heading + .timeline-content {
  padding-top : 0;
}

.timeline-date {
  font-size : 14px;
  color : #AAAAAA;
}

.timeline-embed {
  position : relative;
  padding-bottom : 56.25%;
  padding-top : 25px;
  height : 0;
}
.timeline-embed .embed-element {
  position : absolute;
  top : 0;
  right : 0;
  width : 100%;
  height : 100%;
}
.timeline-embed embed {
  position : absolute;
  top : 0;
  right : 0;
  width : 100%;
  height : 100%;
}
.timeline-embed iframe {
  position : absolute;
  top : 0;
  right : 0;
  width : 100%;
  height : 100%;
}
.timeline-embed object {
  position : absolute;
  top : 0;
  right : 0;
  width : 100%;
  height : 100%;
}

.timeline-img {
  display : block;
  padding : 5px 0;
}

.timeline-img.first {
  margin-left : -10px;
}

.timeline-img.middle {
  margin-left : -10px;
  margin-right : -10px;
}

.timeline-img.last {
  margin-right : -10px;
}

.timeline-resume {
  border-top : 1px solid #EEEEEE;
  background-color : #FBFCFC;
}

.timeline-avatar {
  margin-top : -2px;
  margin-left : 10px;
}

.timeline-title {
  margin : 0;
  padding : 0;
  font-size : 14px;
  line-height : 1.42857;
  font-weight : 600;
  color : #3E5771;
  text-decoration : none;
}
.timeline-title > small {
  display : block;
  font-size : 12px;
  line-height : 1.5;
  color : #A1AAB0;
  overflow : hidden;
  text-overflow : ellipsis;
  white-space : nowrap;
}

.wrapkit-content-rtl .timeline-avatar {
  margin-left : 0;
  margin-right : 10px;
}

@media (min-width: 992px) {
  .timeline-item:nth-child(even) {
    padding : 0 0 50px 35px;
  }
  .timeline-item:nth-child(odd) {
    padding : 0 35px 50px 0;
  }
}

@media (max-width: 991px) {
  .timeline {
    padding-right : 15px;
  }
  .timeline-line {
    right : 15px;
  }
  .timeline-group {
    display : inline-block;
    margin-right : -22px;
  }
  .timeline-item {
    width : 100% !important;
    margin-top : 0 !important;
    padding-left : 10px;
  }
  .timeline-item:nth-child(even):after {
    right : 19px;
    top : 10px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
    right : 40px;
    top : 21px;
    border-top : 11px solid transparent;
    border-bottom : 11px solid transparent;
    border-left : 11px solid #FFFFFF;
  }
  .timeline-item:nth-child(even):before {
    right : 39px;
    top : 20px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
  .timeline-item:nth-child(even) > .timeline-badge {
    top : 12px;
    right : -20px;
    left : auto;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
  .timeline-item:nth-child(odd):after {
    right : 19px;
    top : 10px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
    right : 40px;
    top : 21px;
    border-top : 11px solid transparent;
    border-bottom : 11px solid transparent;
    border-left : 11px solid #FFFFFF;
  }
  .timeline-item:nth-child(odd):before {
    right : 39px;
    top : 20px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
  .timeline-item:nth-child(odd) > .timeline-badge {
    top : 12px;
    right : -20px;
    left : auto;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
  .timeline-item.block:nth-child(even) {
    padding-bottom : 0;
  }
  .timeline-item.block:nth-child(even):after {
    right : 19px;
    top : 10px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
    right : 20px;
    top : 11px;
    border-top : 11px solid transparent;
    border-bottom : 11px solid transparent;
    border-left : 11px solid #FFFFFF;
  }
  .timeline-item.block:nth-child(even):before {
    right : 19px;
    top : 10px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
  .timeline-item.block:nth-child(even) > .timeline-badge {
    top : 12px;
    right : -6px;
    left : auto;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
  .timeline-item.block:nth-child(odd) {
    padding-bottom : 0;
  }
  .timeline-item.block:nth-child(odd):after {
    right : 19px;
    top : 10px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
    right : 20px;
    top : 11px;
    border-top : 11px solid transparent;
    border-bottom : 11px solid transparent;
    border-left : 11px solid #FFFFFF;
  }
  .timeline-item.block:nth-child(odd):before {
    right : 19px;
    top : 10px;
    border : 0;
    border-top : 12px solid transparent;
    border-bottom : 12px solid transparent;
    border-left : 12px solid #CCCCCC;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
  .timeline-item.block:nth-child(odd) > .timeline-badge {
    top : 12px;
    right : -6px;
    left : auto;
    -webkit-transform : translate(0, 0);
       -moz-transform : translate(0, 0);
        -ms-transform : translate(0, 0);
         -o-transform : translate(0, 0);
            transform : translate(0, 0);
  }
}

@media (max-width: 991px) {
  #timeline.timeline-wrapper .timeline {
    padding : 0;
  }
  #timeline.timeline-wrapper .timeline .card-block {
    text-align : right;
  }
  #timeline.timeline-wrapper .timeline-line {
    display : inline-block;
    position : absolute;
    top : 0;
    bottom : 0;
    right : 50%;
    width : 4px;
    background-color : #DDDDDD;
    -webkit-transform : translate(50%, 0);
       -moz-transform : translate(50%, 0);
        -ms-transform : translate(50%, 0);
         -o-transform : translate(50%, 0);
            transform : translate(50%, 0);
  }
  #timeline.timeline-wrapper .timeline-group {
    display : block;
    margin-right : -6px;
    text-align : center;
  }
  #timeline.timeline-wrapper .timeline-item {
    display : block;
    padding : 20px 0 20px !important;
  }
  #timeline.timeline-wrapper .timeline-item:nth-child(even) {
    float : none;
    clear : both;
  }
  #timeline.timeline-wrapper .timeline-item:nth-child(even):after {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item:nth-child(even):before {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item:nth-child(odd) {
    float : none;
    clear : both;
  }
  #timeline.timeline-wrapper .timeline-item:nth-child(odd):after {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item:nth-child(odd):before {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item > .timeline-badge {
    top : 0 !important;
    right : 45% !important;
  }
  #timeline.timeline-wrapper .timeline-item.block:nth-child(even) {
    float : none;
    clear : both;
  }
  #timeline.timeline-wrapper .timeline-item.block:nth-child(even):after {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item.block:nth-child(even):before {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item.block:nth-child(odd) {
    float : none;
    clear : both;
  }
  #timeline.timeline-wrapper .timeline-item.block:nth-child(odd):after {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item.block:nth-child(odd):before {
    display : none;
  }
  #timeline.timeline-wrapper .timeline-item.timeline-poster > .timeline-badge {
    display : none;
  }
}

@media (max-width: 543px) {
  .timeline-item > .timeline-badge {
    top : 0 !important;
    right : 44% !important;
  }
}


text:
require "openssl"
require "base64"
require "uri"
require "rest-client"
require "json"

module ZhimaAuth
  class << self
    attr_accessor :configuration
  end

  def self.configure
    self.configuration ||= Configuration.new
    yield(configuration)
  end

  def self.mech_rsa
    @mech_rsa ||= OpenSSL::PKey::RSA.new configuration.private_key
  end

  # expected biz_params { cert_name: "王大锤", cert_no: "32099999999999999X", transaction_id(optional): "789789", return_url: "http://www.liangboyuan.pub" }
  def self.certify biz_params
    params = biz_params[:transaction_id] ? biz_params : biz_params.merge({transaction_id: SecureRandom.uuid})
    biz_no = InitializeRequest.new(params).get_biz_no
    url = CertifyRequest.new({biz_no: biz_no, return_url: biz_params[:return_url]}).generate_url
    return {
      biz_no: biz_no,
      certify_url: url
    }
  end
end

require_relative "zhima_auth/version"
require_relative "zhima_auth/configuration"
require_relative "zhima_auth/sign"
require_relative "zhima_auth/request"
require_relative "zhima_auth/web_util"
require_relative "zhima_auth/error"
require_relative "zhima_auth/validation"

redpajama_set_name: RedPajamaGithub


text:
using System;
using System.Collections.Generic;

namespace Xenon.Core.States
{
    /// <summary>
    /// Manages a stack of <see cref="GameState"/>s
    /// </summary>
    public class GameStateStack : IGameStateStack
    {
        private readonly Stack<GameState> _states;

        #region Lifecycle

        /// <summary>
        /// Initializes a new instance of <see cref="GameStateStack"/>
        /// </summary>
        public GameStateStack()
        {
            _states =  new Stack<GameState>(32);
        }

        /// <summary>
        /// Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
        /// </summary>
        ~GameStateStack()
        {
            Dispose(false);
        }

        /// <summary>
        /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
        /// </summary>
        public void Dispose() { Dispose(true); }

        private void Dispose(bool managed)
        {
            if (managed)
            {
                GC.SuppressFinalize(this);
                while (_states.Count > 0) Pop();
            }
        }

        #endregion

        /// <summary>
        /// Activates a new <see cref="GameState"/> and pauses any underlying states
        /// </summary>
        /// <param name="newState"></param>
        public void Push(GameState newState)
        {
            if(_states.Count > 0)
                _states.Peek().Pause();

            _states.Push(newState);

            newState.OnEnter();
        }

        /// <summary>
        /// Exits the current <see cref="GameState"/> and reactivates any underlying states
        /// </summary>
        /// <returns></returns>
        public GameState Pop()
        {
            if (_states.Count > 0) {
                var lastState = _states.Pop();
                lastState.Dispose();

                if(_states.Count > 0)
                    _states.Peek().Unpause();

                return lastState;
            }

            return null;
        }

        /// <summary>
        /// Updates the game states
        /// </summary>
        /// <param name="gameTime"></param>
        public void Update(GameTime gameTime)
        {
            _states.ForEach(state => state.Update(gameTime));
        }

        /// <summary>
        /// Renders the game states
        /// </summary>
        /// <param name="gameTime"></param>
        public void Render(GameTime gameTime)
        {
            _states.ForEach(state => state.Render(gameTime));
        }
    }
}


text:
package com.dp1wms.model;

public class Ruta {
    private int idRuta;
    private int idEnvio;
    private Integer[] camino_x;
    private Integer[] camino_y;
    private int costo;

    public int getIdRuta() {
        return idRuta;
    }

    public void setIdRuta(int idRuta) {
        this.idRuta = idRuta;
    }

    public int getIdEnvio() {
        return idEnvio;
    }

    public void setIdEnvio(int idEnvio) {
        this.idEnvio = idEnvio;
    }

    public Integer[] getCamino_x() {
        return camino_x;
    }

    public void setCamino_x(Integer[] camino_x) {
        this.camino_x = camino_x;
    }

    public Integer[] getCamino_y() {
        return camino_y;
    }

    public void setCamino_y(Integer[] camino_y) {
        this.camino_y = camino_y;
    }

    public int getCosto() {
        return costo;
    }

    public void setCosto(int costo) {
        this.costo = costo;
    }
}


text:
class ChangeBookingRequestNotesLength < ActiveRecord::Migration[5.1]
  def change
    change_column :booking_requests, :additional_info, :string, limit: 500, null: false, default: ''
  end
end


text:
//
// Copyright (c) Microsoft Corporation.  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.
//
var ExecResult = (function () {
    function ExecResult() {
        this.stdout = "";
        this.stderr = "";
    }
    return ExecResult;
})();

var WindowsScriptHostExec = (function () {
    function WindowsScriptHostExec() {
    }
    WindowsScriptHostExec.prototype.exec = function (filename, cmdLineArgs, handleResult) {
        var result = new ExecResult();
        var shell = new ActiveXObject('WScript.Shell');
        try  {
            var process = shell.Exec(filename + ' ' + cmdLineArgs.join(' '));
        } catch (e) {
            result.stderr = e.message;
            result.exitCode = 1;
            handleResult(result);
            return;
        }

        while (process.Status != 0) {
        }

        result.exitCode = process.ExitCode;
        if (!process.StdOut.AtEndOfStream)
            result.stdout = process.StdOut.ReadAll();
        if (!process.StdErr.AtEndOfStream)
            result.stderr = process.StdErr.ReadAll();

        handleResult(result);
    };
    return WindowsScriptHostExec;
})();

var NodeExec = (function () {
    function NodeExec() {
    }
    NodeExec.prototype.exec = function (filename, cmdLineArgs, handleResult) {
        var nodeExec = require('child_process').exec;

        var result = new ExecResult();
        result.exitCode = null;
        var cmdLine = filename + ' ' + cmdLineArgs.join(' ');

        var process = nodeExec(cmdLine, function (error, stdout, stderr) {
            result.stdout = stdout;
            result.stderr = stderr;
            result.exitCode = error ? error.code : 0;
            handleResult(result);
        });
    };
    return NodeExec;
})();

var Exec = (function () {
    var global = Function("return this;").call(null);
    if (typeof global.ActiveXObject !== "undefined") {
        return new WindowsScriptHostExec();
    } else {
        return new NodeExec();
    }
})();


text:
/* vim:set ts=2 sw=2 et cindent: */
/* ***** BEGIN LICENSE BLOCK *****
 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
 *
 * The contents of this file are subject to the Mozilla Public License Version
 * 1.1 (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.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
 * for the specific language governing rights and limitations under the
 * License.
 *
 * The Original Code is Mozilla IPC.
 *
 * The Initial Developer of the Original Code is IBM Corporation.
 * Portions created by IBM Corporation are Copyright (C) 2003
 * IBM Corporation. All Rights Reserved.
 *
 * Contributor(s):
 *   Darin Fisher <darin@meer.net>
 *
 * Alternatively, the contents of this file may be used under the terms of
 * either the GNU General Public License Version 2 or later (the "GPL"), or
 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 * in which case the provisions of the GPL or the LGPL are applicable instead
 * of those above. If you wish to allow use of your version of this file only
 * under the terms of either the GPL or the LGPL, and not to allow others to
 * use your version of this file under the terms of the MPL, indicate your
 * decision by deleting the provisions above and replace them with the notice
 * and other provisions required by the GPL or the LGPL. If you do not delete
 * the provisions above, a recipient may use your version of this file under
 * the terms of any one of the MPL, the GPL or the LGPL.
 *
 * ***** END LICENSE BLOCK ***** */

#ifndef ipcConnection_h__
#define ipcConnection_h__

#include "nscore.h"

class ipcMessage;

#define IPC_METHOD_PRIVATE_(type)   NS_HIDDEN_(type)
#define IPC_METHOD_PRIVATE          IPC_METHOD_PRIVATE_(nsresult)

/* ------------------------------------------------------------------------- */
/* Platform specific IPC connection API.
 */

typedef void (* ipcCallbackFunc)(void *);

/**
 * IPC_Connect
 *
 * This function causes a connection to the IPC daemon to be established.
 * If a connection already exists, then this function will be ignored.
 *
 * @param daemonPath
 *        Specifies the path to the IPC daemon executable.
 *
 * NOTE: This function must be called on the main thread.
 */
IPC_METHOD_PRIVATE IPC_Connect(const char *daemonPath);

/**
 * IPC_Disconnect
 *
 * This function causes a connection to the IPC daemon to be closed.  Any
 * unsent messages (IPC_SendMsg puts messages on a queue) will be sent to the
 * IPC daemon before the connection is closed.
 *
 * NOTE: This function must be called on the main thread.
 */
IPC_METHOD_PRIVATE IPC_Disconnect();

/**
 * IPC_SendMsg
 *
 * This function sends a message to the IPC daemon.  Typically, the message
 * is put on a queue, to be delivered asynchronously to the IPC daemon.  The
 * ipcMessage object will be deleted when IPC_SendMsg is done with it.  The
 * caller must not touch |msg| after passing it to IPC_SendMsg.
 *
 * IPC_SendMsg cannot be called before IPC_Connect or after IPC_Disconnect.
 *
 * NOTE: This function may be called on any thread.
 */
IPC_METHOD_PRIVATE IPC_SendMsg(ipcMessage *msg);

/**
 * IPC_DoCallback
 *
 * This function executes a callback function on the same background thread
 * that calls IPC_OnConnectionEnd and IPC_OnMessageAvailable.
 *
 * If this function succeeds, then the caller is guaranteed that |func| will
 * be called.  This guarantee is important because it allows the caller to
 * free any memory associated with |arg| once |func| has been called.
 *
 * NOTE: This function may be called on any thread.
 */
IPC_METHOD_PRIVATE IPC_DoCallback(ipcCallbackFunc func, void *arg);

/* ------------------------------------------------------------------------- */
/* Cross-platform IPC connection methods.
 */

/**
 * IPC_SpawnDaemon
 *
 * This function launches the IPC daemon process.  It is called by the platform
 * specific IPC_Connect implementation.  It should not return until the daemon
 * process is ready to receive a client connection or an error occurs.
 *
 * @param daemonPath
 *        Specifies the path to the IPC daemon executable.
 */
IPC_METHOD_PRIVATE IPC_SpawnDaemon(const char *daemonPath);

/* ------------------------------------------------------------------------- */
/* IPC connection callbacks (not implemented by the connection code).
 *
 * NOTE: These functions execute on a background thread!!
 */

/**
 * IPC_OnConnectionEnd
 *
 * This function is called whenever the connection to the IPC daemon has been
 * terminated.  If terminated due to an abnormal error, then the error will be
 * described by the |error| parameter.  If |error| is NS_OK, then it means the
 * connection was closed in response to a call to IPC_Disconnect.
 */
IPC_METHOD_PRIVATE_(void) IPC_OnConnectionEnd(nsresult error);

/**
 * IPC_OnMessageAvailable
 *
 * This function is called whenever an incoming message is read from the IPC
 * daemon.  The ipcMessage object, |msg|, must be deleted by the implementation
 * of IPC_OnMessageAvailable when the object is no longer needed.
 */
IPC_METHOD_PRIVATE_(void) IPC_OnMessageAvailable(ipcMessage *msg);

#endif // ipcConnection_h__


text:
from classes import Enigma, dictionaries
import tkinter as tk

class GUI(tk.Frame):

	def __init__(self, master, enigma):
		super().__init__(master)
		self.pack()
		self.master.title('Enigma simulator')
		self.master.resizable(False, False)

		self.enigma = enigma

		self.textOutput = tk.Text(master, height = 5, width = 50, state = tk.NORMAL, bg = '#E0E0E0')
		self.textOutput.pack( side = tk.BOTTOM)

		self.textInput = tk.Text(master, height = 5, width = 50)
		self.textInput.pack( side = tk.BOTTOM)

		self.letters = ('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z')

		self.rotorsPositions = []
		for i in range(3):
			self.rotorsPositions.append(tk.Spinbox(master,values = self.letters, width = 1, command=self.changeRotorPos))
			self.rotorsPositions[i].pack(side = tk.LEFT)

		self.encryptButton = tk.Button(master, text ="Encrypt/Decrypt", height = 1, command = self.encrypt)
		self.encryptButton.pack(side = tk.RIGHT)

		self.encryptButton = tk.Button(master, text ="Set crosover(INOP)", height = 1, command = None)
		self.encryptButton.pack(side = tk.RIGHT)

	def changeRotorPos(self):
		for i in range(3):
			position = self.rotorsPositions[i].get()
			position = dictionaries.CharToInt[position]
			self.enigma.setRotorPos(i,position)

	def encrypt(self):
		self.changeRotorPos()
		text = self.textInput.get(1.0, tk.END)
		text = text[:len(text)-1]
		text = list(filter((lambda text: text.upper() in self.letters), text.upper()))
		text = "".join(text)
		text = self.enigma.encrypt(text)
		#self.textOutput.config(state = tk.NORMAL)
		self.textOutput.delete(1.0,tk.END)
		self.textOutput.insert(tk.END, text)
		#self.textOutput.config(state = tk.DISABLED)

def main():
	root = tk.Tk()
	enigma = Enigma([1,2,3])
	app = GUI(root, enigma)
	app.mainloop()

if __name__ == '__main__':
	main()


text:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>pl.edu.osp</groupId>
    <artifactId>Pi4jTest</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>Testing Pi4J and Maven</name>
    <url>http://maven.apache.org</url>

    <properties>
        <pi4j.version>1.2-SNAPSHOT</pi4j.version>
        <compiler-plugin.version>3.1</compiler-plugin.version>
        <assembly-plugin.version>2.4</assembly-plugin.version>
 <ant-jsch.version>1.9.7</ant-jsch.version>
 <jsch.version>0.1.53</jsch.version>
 <ant-contrib.version>20020829</ant-contrib.version>
 <pi4j.dev.host>192.168.0.13</pi4j.dev.host>
 <pi4j.dev.user>pi</pi4j.dev.user>
 <pi4j.dev.password>raspberry</pi4j.dev.password>
 <pi4j.dev.port>22</pi4j.dev.port>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.pi4j</groupId>
            <artifactId>pi4j-core</artifactId>
            <version>${pi4j.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>com.pi4j</groupId>
                    <artifactId>pi4j-native</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
 <dependency>
			<groupId>com.pi4j</groupId>
			<artifactId>pi4j-gpio-extension</artifactId>
			<version>${pi4j.version}</version>
		</dependency>
		<dependency>
			<groupId>com.pi4j</groupId>
			<artifactId>pi4j-device</artifactId>
			<version>${pi4j.version}</version>
</dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>${compiler-plugin.version}</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>${assembly-plugin.version}</version>
                <executions>
                    <execution>
                        <id>jar-with-dependencies</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                        <configuration>
                            <descriptorRefs>
                                <descriptorRef>
                                    jar-with-dependencies
                                </descriptorRef>
                            </descriptorRefs>
                            <archive>
                                <manifest>
                                    <mainClass>
                                    pl.edu.osp.Main
                                    </mainClass>
                                </manifest>
                            </archive>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

<plugin>
				<artifactId>maven-antrun-plugin</artifactId>
				<executions>

					<!-- copy the compiled JAR file to the Raspberry Pi platform platform -->
					<execution>
						<id>transfer-compiled-pi4j-example-jar</id>
						<phase>install</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<tasks>
								<taskdef resource="net/sf/antcontrib/antcontrib.properties"
									classpathref="maven.plugin.classpath" />
								<if>
									<equals arg1="${pi4j.dev.transfer}" arg2="true" />
									<then>

										<!-- ensure the target directory exists on the Raspberry Pi -->
										<sshexec host="${pi4j.dev.host}" port="${pi4j.dev.port}" username="${pi4j.dev.user}"
											password="${pi4j.dev.password}" trust="true" failonerror="false"
											verbose="true" command="mkdir --parents ${pi4j.dev.directory}" />

										<!-- copy the JAR file to the Raspberry Pi -->
										<scp
											file="${project.build.directory}/${project.build.finalName}.jar"
											todir="${pi4j.dev.user}:${pi4j.dev.password}@${pi4j.dev.host}:${pi4j.dev.directory}"
											port="${pi4j.dev.port}" trust="true" verbose="true" failonerror="true">
										</scp>

                                        <!-- copy the example source files to the Raspberry Pi -->
                                        <scp todir="${pi4j.dev.user}:${pi4j.dev.password}@${pi4j.dev.host}:${pi4j.dev.directory}"
                                             port="${pi4j.dev.port}" trust="true" verbose="true" failonerror="true">
                                            <fileset dir="src/main/java" />
                                        </scp>
									</then>
								</if>
							</tasks>
						</configuration>
					</execution>
				</executions>
                <dependencies>
                    <dependency>
                        <groupId>org.apache.ant</groupId>
                        <artifactId>ant-jsch</artifactId>
                        <version>${ant-jsch.version}</version>
                    </dependency>
                    <dependency>
                        <groupId>com.jcraft</groupId>
                        <artifactId>jsch</artifactId>
                        <version>${jsch.version}</version>
                    </dependency>
                    <dependency>
                        <groupId>ant-contrib</groupId>
                        <artifactId>ant-contrib</artifactId>
                        <version>${ant-contrib.version}</version>
                    </dependency>
                </dependencies>
</plugin>

        </plugins>
    </build>
</project>


text:
Navigating to a Hook Invocation

Note:
- To navigate to a hook invocation from the editor, click the gotoHookInvocation icon in the gutter.
In case of multiple invocations, PhpStorm displays a list of available hook invocations so you can choose which one to navigate to.

- You will be navigated to the line where the relevant hook is invoked with module_invoke_all(), module_invoke(), or drupal_alter().


text:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WikiClientLibrary.Cargo.Linq
{
    ///
    /// Contains stub methods used inside expressions in <see cref="IQueryable{T}"/> extension methods.
    /// These methods are used for building LINQ query expressions and are not intended to be invoked directly.
    ///
    public static class CargoFunctions
    {

        private static Exception GetClientInvocationException(string name)
        {
            return new InvalidOperationException($"Cargo LINQ function {name} should be used inside Cargo LINQ query expression.");
        }

        public static bool Like(string value, string pattern)
            => throw GetClientInvocationException(nameof(Like));

        ///
        /// Determines whether the list-typed field contains a certain value.
        /// (See mw:Extension:Cargo/Querying data#The "HOLDS" command.)
        ///
        /// <typeparam name="T">element name.</typeparam>
        /// <param name="cargoList">Cargo table field expression of type <c>list</c>.</param>
        /// <param name="element">the matching element.</param>
        /// <returns>whether the list contains the matching element.</returns>
        public static bool Holds<T>(IEnumerable<T> cargoList, T element)
            => throw GetClientInvocationException(nameof(Holds));

        ///
        /// Determines whether the list-typed field contains any value matching the specific <c>LIKE</c> wildcard expression.
        /// (See mw:Extension:Cargo/Querying data#HOLDS LIKE.)
        ///
        /// <typeparam name="T">element name.</typeparam>
        /// <param name="cargoList">Cargo table field expression of type <c>list</c>.</param>
        /// <param name="pattern">the matching pattern with <c>%</c> or <c>_</c> wildcard.</param>
        /// <returns>whether the list contains the matching element.</returns>
        public static bool HoldsLike<T>(IEnumerable<T> cargoList, string pattern)
            => throw GetClientInvocationException(nameof(HoldsLike));

        ///
        /// Returns the difference (<paramref name="dt1"/> - <paramref name="dt2"/>) between 2 dates expressed as a value in days from one date to the other.
        ///
        /// <param name="dt1">date 1.</param>
        /// <param name="dt2">date 2.</param>
        public static int DateDiff(DateTime? dt1, DateTime? dt2)
            => throw GetClientInvocationException(nameof(DateDiff));

        ///
        /// Returns the difference (<paramref name="dt1"/> - <paramref name="dt2"/>) between 2 dates expressed as a value in days from one date to the other.
        ///
        /// <param name="dt1">date 1.</param>
        /// <param name="dt2">date 2.</param>
        public static int DateDiff(DateTimeOffset? dt1, DateTimeOffset? dt2)
            => throw GetClientInvocationException(nameof(DateDiff));

    }
}


text:
layout: page
title: Sapphire Group Show
date: 2016-05-24
author: Bobby House
tags: weekly links, java
status: published
summary: Nam egestas nibh in odio.
banner: images/banner/meeting-01.jpg
booking:
  startDate: 11/01/2019
  endDate: 11/02/2019
  ctyhocn: BOHCCHX
  groupCode: SGS
published: true
---
Nunc id ante id augue maximus ultrices. Sed eu sem at tortor fermentum consectetur. Morbi ut purus elementum, interdum mi rutrum, commodo ante. Maecenas non felis et est maximus lobortis a vel nulla. Donec dictum, mauris id convallis iaculis, tortor nulla feugiat mauris, eu tincidunt est sapien ut neque. Praesent eros elit, finibus ac semper in, sagittis ac elit. Quisque malesuada justo ante, non fringilla nisl placerat nec. Vestibulum congue risus in velit tincidunt, nec imperdiet augue scelerisque. Duis tristique enim lacinia tempor accumsan.

1 Maecenas pretium diam eget turpis posuere malesuada
1 Aenean quis ante et lacus iaculis semper et at metus
1 Nullam fringilla mi vel fermentum blandit.

Curabitur a maximus nisl. Suspendisse sed enim imperdiet, laoreet orci et, bibendum erat. Mauris sollicitudin auctor est eget laoreet. Nullam sagittis nisl non nisi consequat porttitor. Mauris non ultrices eros. Donec feugiat lectus a diam efficitur finibus. Quisque vitae commodo nibh, vitae molestie turpis. Sed ut odio dui. Curabitur ipsum leo, finibus ut efficitur sed, vulputate eu purus. Nullam vitae ipsum euismod, tristique neque ut, laoreet lectus. Aliquam eu iaculis nisl. Nullam vel leo vitae nisi suscipit consequat id a leo. Donec orci lectus, ullamcorper nec ipsum ut, dignissim lacinia diam. Nam accumsan, est faucibus dapibus feugiat, erat sem cursus mauris, vel tincidunt diam ante at turpis. Duis efficitur felis eget lacinia auctor. Maecenas in mi quis dui convallis porta interdum et quam.


text:
<?php

namespace SilverStripe\TagField\Tests\Stub;

use SilverStripe\Dev\TestOnly;
use SilverStripe\ORM\DataObject;

class StringTagFieldTestBlogPost extends DataObject implements TestOnly
{
    private static $table_name = 'StringTagFieldTestBlogPost';

    private static $db = [
        'Title' => 'Text',
        'Content' => 'Text',
        'Tags' => 'Text',
    ];
}


text:
package cgta.oscala
package util

//////////////////////////////////////////////////////////////
// Copyright (c) 2014 Ben Jackman
// All Rights Reserved
// please contact ben@jackman.biz
// for licensing inquiries
// Created by bjackman @ 8/11/14 2:45 AM
//////////////////////////////////////////////////////////////

object CsvReader {
  def apply(lines: Iterator[String]): CsvReader = {
    val colByName = lines.next().split(",").zipWithIndex.toMap
    new CsvReader(colByName, lines.map(_.split(",").toArray).toArray)
  }
}

class CsvReader(hdrMap: Map[String, Int], rowArray: Array[Array[String]]) {
  val colNames = hdrMap.iterator.map(_.swap).toList.sortBy(_._1).map(_._2).toArray
  def rows : IndexedSeq[Map[String, String]] = new IndexedSeq[Map[String, String]] {
    override def length: Int = rowArray.length
    override def apply(idx: Int): Map[String, String] = new Map[String, String] {
      override def +[B1 >: String](kv: (String, B1)): Map[String, B1] = sys.error("Don't add to csv rows")
      override def get(key: String): Option[String] = hdrMap.get(key).flatMap(ci => rowArray(idx).getOpt(ci))
      override def iterator: Iterator[(String, String)] = (rowArray(idx) zip colNames).iterator
      override def -(key: String): Map[String, String] = sys.error("Don't remove from csv rows")
    }
  }
}


text:
====================
GLAMkit-feincmstools
====================

Wrapper around `FeinCMS <http://github.com/matthiask/feincms>`_ with many extra features.

Principally, feincmstools allows you to create FeinCMS content types, and register them to your Document models  more intuitively and DRYly.

GLAMkit-feincmstools is a part of the `GLAMkit framework <http://glamkit.com/>`_.

A demo app is available `here <https://github.com/ixc/feincmstools-demo>`_.

To make a FeinCMS Document:
---------------------------

1) In ``models.py`` Define your model as a subclass of ``feincmstools.base.FeinCMSDocument`` (or ``feincmstools.base.HierarchicalFeinCMSDocument`` for documents you want to arrange in a tree).

If you are using ``HierarchicalFeinCMSDocument``, you may want to mix in ``HierarchicalSlugField``, which generates a slug value based on concatenations of the slugs of the document's parents.
::

	from feincmstools.fields import HierarchicalSlugField
	from feincmstools.base import HierarchicalFeinCMSDocument
	from django.db import models

	class Article(HierarchicalFeinCMSDocument, HierarchicalSlugField):
		title = models.CharField(max_length=255)
		slug = models.SlugField('slug', max_length=255, unique=True, db_index=True)

Create an admin for the model, in ``admin.py``::

	from django.contrib import admin
	from feincmstools.admin import HierarchicalFeinCMSDocumentAdmin
	from .models import Article

	class ArticleAdmin(HierarchicalFeinCMSDocumentAdmin):
		prepopulated_fields = {"slug": ("title", )}

        admin.site.register(Article, ArticleAdmin)

2) Define ``feincms_regions`` OR ``feincms_templates`` as an attribute of your model. ``feincms_regions`` is a list of region name/title tuples. ``feincms_templates`` allows different regions to be used and different templates rendered depending on user selection.
::

	class Article(HierarchicalFeinCMSDocument, HierarchicalSlugField):
		...

		feincms_regions = (
			('main', 'Main'),
			('left', 'Left sidebar'),
		)

		OR

		feincms_templates = [
			{
				'key': 'base',
				'title': 'Standard template',
				'path': 'magazine/article.html',
				'regions': (
					('main', 'Main content area'),
					('related', 'Related articles', 'inherited'),
				),
			}, {
				'key': '2col',
				'title': 'Template with two columns',
				'path': 'magazine/article_2col.html',
				'regions': (
					('col1', 'Column one'),
					('col2', 'Column two'),
					('related', 'Related articles', 'inherited'),
				),
			}
		]

3) Define the classmethod ``content_types_by_region(region)``. This should return a list of which content types are allowed in which region, grouped into menu sections that appear in the admin UI. To define content types, see the next section.
::

	class Article(HierarchicalFeinCMSDocument, HierarchicalSlugField):
		...

		@classmethod
		def content_types_by_region(cls, region):
			standard_content_types = [
				(None, (Text, HorizontalRule)),
				('Media', (OEmbedContent)), #The string 'Media' is shown in the admin menu.
				('Advanced', (RawHTMLContent,)),
			]

			other_content_types = {
				'related': [
					(None, (RelatedArticle,)),
				],
				'col2': [
					(None, (Text,)),
					('Advanced', (RawHTMLContent,)),
				]
			}

			return other_content_types.get(region, standard_content_types)

5) To render the FeinCMS content in the template, use something like::

	{% load feincms_tags %}
	{% feincms_render_region article "main" request %}

To make a FeinCMS Content Type:
-------------------------------

FeinCMStools also provides a ``Content`` abstract model that you can use for creating FeinCMS content types. If you use ``feincmstools.base.Content``, it looks through hierarchy of template paths, allowing you to finely control the appearance of content types in different regions and/or apps. To create a content type:

1) In ``content_types.py`` (the filename doesn't matter, but this is a good convention), define an abstract model that subclasses ``Content``::

	from django.db import models
	from feincmstools.base import Content

	class Text(Content):
			text = models.TextField(blank=True)

			class Meta:
					abstract=True

2) Create a template to render the content at ``content_types/<your_app>/text/render.html`` in your ``templates`` folder. The template is provided with a context variable ``content``, which is your Content model instance. You can treat it as any other Django model, e.g.::

	{{ content.text|linebreaks }}

``render.html`` is the 'last-resort' template name. You can provide other templates for more specific contexts, such as for specific regions, or used by specific models. Templates are searched in this order::

    content_types/[content_type_defining_app]/[content_model]/[content_type_using_app]_[content_type_using_model]_[region_name].html
    content_types/[content_type_defining_app]/[content_model]/[content_type_using_model]_[region_name].html
    content_types/[content_type_defining_app]/[content_model]/[region_name].html
    content_types/[content_type_defining_app]/[content_model]/render.html

And for admin::

    content_types/[content_type_defining_app]/[content_model]/admin_init.html

``Content`` searches up through the model hierarchy until it finds a suitable template, so templates named after superclasses will also work.

3) Add `Text` to the content_types_by_region lists, where you want it to be available.

4) Create a schema migration for EVERY app that uses `Text` in its content_types_by_region. If you are confident there are no other schema changes in these apps, use `manage.py feincms_models_migration`, which creates automatic migrations for every feincms app.


text:
FROM mpioperator/base

RUN apt update \
    && apt install -y --no-install-recommends openmpi-bin \
    && rm -rf /var/lib/apt/lists/*


text:
/*************************************************************************
 *  Compilation:  javac IndexMinPQ.java
 *  Execution:    java IndexMinPQ
 *
 *  Indexed PQ implementation using a binary heap.
 *
 *********************************************************************/

import java.util.Iterator;
import java.util.NoSuchElementException;

public class IndexMinPQ<Key extends Comparable<Key>> implements Iterable<Integer> {
    private int N;           // number of elements on PQ
    private int[] pq;        // binary heap using 1-based indexing
    private int[] qp;        // inverse of pq - qp[pq[i]] = pq[qp[i]] = i
    private Key[] keys;      // keys[i] = priority of i

    public IndexMinPQ(int NMAX) {
        keys = (Key[]) new Comparable[NMAX + 1];    // make this of length NMAX??
        pq   = new int[NMAX + 1];
        qp   = new int[NMAX + 1];                   // make this of length NMAX??
        for (int i = 0; i <= NMAX; i++) qp[i] = -1;
    }

    // is the priority queue empty?
    public boolean isEmpty() { return N == 0; }

    // is k an index on the priority queue?
    public boolean contains(int k) {
        return qp[k] != -1;
    }

    // number of keys in the priority queue
    public int size() {
        return N;
    }

    // associate key with index k
    public void insert(int k, Key key) {
        if (contains(k)) throw new RuntimeException("item is already in pq");
        N++;
        qp[k] = N;
        pq[N] = k;
        keys[k] = key;
        swim(N);
    }

    // return the index associated with a minimal key
    public int min() {
        if (N == 0) throw new RuntimeException("Priority queue underflow");
        return pq[1];
    }

    // return a minimal key
    public Key minKey() {
        if (N == 0) throw new RuntimeException("Priority queue underflow");
        return keys[pq[1]];
    }

    // delete a minimal key and returns its associated index
    public int delMin() {
        if (N == 0) throw new RuntimeException("Priority queue underflow");
        int min = pq[1];
        exch(1, N--);
        sink(1);
        qp[min] = -1;            // delete
        keys[pq[N+1]] = null;    // to help with garbage collection
        pq[N+1] = -1;            // not needed
        return min;
    }

/*
    // change key associated with index k; insert if index k is not present
    public void put(int k, Key key) {
        if (!contains(k)) insert(k, key);
        else changeKey(k, key);
    }

    // return key associated with index k
    public Key get(int k) {
        if (!contains(k)) throw new RuntimeException("item is not in pq");
        else return keys[pq[k]];
    }
*/

    // change the key associated with index k
    public void change(int k, Key key) {
        if (!contains(k)) throw new RuntimeException("item is not in pq");
        keys[k] = key;
        swim(qp[k]);
        sink(qp[k]);
    }

    // decrease the key associated with index k
    public void decrease(int k, Key key) {
        if (!contains(k)) throw new RuntimeException("item is not in pq");
        if (keys[k].compareTo(key) <= 0) throw new RuntimeException("illegal decrease");
        keys[k] = key;
        swim(qp[k]);
    }

    // increase the key associated with index k
    public void increase(int k, Key key) {
        if (!contains(k)) throw new RuntimeException("item is not in pq");
        if (keys[k].compareTo(key) >= 0) throw new RuntimeException("illegal decrease");
        keys[k] = key;
        sink(qp[k]);
    }

   /**************************************************************
    * General helper functions
    **************************************************************/
    private boolean greater(int i, int j) {
        return keys[pq[i]].compareTo(keys[pq[j]]) > 0;
    }

    private void exch(int i, int j) {
        int swap = pq[i]; pq[i] = pq[j]; pq[j] = swap;
        qp[pq[i]] = i; qp[pq[j]] = j;
    }

   /**************************************************************
    * Heap helper functions
    **************************************************************/
    private void swim(int k)  {
        while (k > 1 && greater(k/2, k)) {
            exch(k, k/2);
            k = k/2;
        }
    }

    private void sink(int k) {
        while (2*k <= N) {
            int j = 2*k;
            if (j < N && greater(j, j+1)) j++;
            if (!greater(k, j)) break;
            exch(k, j);
            k = j;
        }
    }

   /***********************************************************************
    * Iterators
    **********************************************************************/

   /**
     * Return an iterator that iterates over all of the elements on the
     * priority queue in ascending order.
     * <p>
     * The iterator doesn't implement <tt>remove()</tt> since it's optional.
     */
    public Iterator<Integer> iterator() { return new HeapIterator(); }

    private class HeapIterator implements Iterator<Integer> {
        // create a new pq
        private IndexMinPQ<Key> copy;

        // add all elements to copy of heap
        // takes linear time since already in heap order so no keys move
        public HeapIterator() {
            copy = new IndexMinPQ<Key>(pq.length - 1);
            for (int i = 1; i <= N; i++)
                copy.insert(pq[i], keys[pq[i]]);
        }

        public boolean hasNext()  { return !copy.isEmpty();                     }
        public void remove()      { throw new UnsupportedOperationException();  }

        public Integer next() {
            if (!hasNext()) throw new NoSuchElementException();
            return copy.delMin();
        }
    }

    public static void main(String[] args) {
        // insert a bunch of strings
        String[] strings = { "it", "was", "the", "best", "of", "times", "it", "was", "the", "worst" };

        IndexMinPQ<String> pq = new IndexMinPQ<String>(strings.length);
        for (int i = 0; i < strings.length; i++) {
            pq.insert(i, strings[i]);
        }

        // delete and print each key
        while (!pq.isEmpty()) {
            int i = pq.delMin();
            StdOut.println(i + " " + strings[i]);
        }
        StdOut.println();

        // reinsert the same strings
        for (int i = 0; i < strings.length; i++) {
            pq.insert(i, strings[i]);
        }

        // print each key using the iterator
        for (int i : pq) {
            StdOut.println(i + " " + strings[i]);
        }
        while (!pq.isEmpty()) {
            pq.delMin();
        }

    }
}


text:
/* jshint node: true */
'use strict';

var path = require('path');

module.exports = {
  name: 'ember-capture',

  includedCommands: function() {
    return {
      capture: require('./lib/commands/capture')
    }
  },

  included: function (app, parentAddon) {
    var target = (parentAddon || app);
    this._super.included(target);

    if (app.tests) {
      app.import(path.join('vendor', 'ember-capture', 'capture-client.js'), {
        type: 'test',
        prepend: true
      });
    }
  },

  contentFor: function(type, config, content) {
    if (this.contentForMethods[type]) {
      return this.contentForMethods[type](config, content);
    }
  },

  contentForMethods: {
    "test-body": function(config, content) {
      for (var i = 0; i < content.length; i++) {
        if (~content[i].toString().indexOf('ember-testing-container')) {
          content = content.splice(i,1);
        }
      }
    }
  },

  serverMiddleware: function(config) {
    var app = config.app;
    var options = config.options;
    var project = options.project;

    // Switch on and off based upon the environment.
    if (options.environment !== 'capture') { return; }

    app.use(function(req, res, next) {
      var appConfig = project.config(options.environment);

      // If we're not using CSP headers, bail.
      if (!appConfig || !appConfig.contentSecurityPolicyHeader || !appConfig.contentSecurityPolicy) {
        next();
        return;
      }

      var header = appConfig.contentSecurityPolicyHeader;
      var headerConfig = appConfig.contentSecurityPolicy;
      var normalizedHost = (options.captureHost ? options.captureHost : 'localhost');
      var captureServerURL = 'http://' + normalizedHost + ':' + options.capturePort + '/';

      // Make sure it exists.
      headerConfig['connect-src'] = headerConfig['connect-src'] || '';

      // Add ourselves to the list.
      headerConfig['connect-src'] = headerConfig['connect-src'] + ' ' + captureServerURL;

      // Collapse all of the values back into the header.
      var headerValue = Object.keys(headerConfig).reduce(function(memo, value) {
        return memo + value + ' ' + headerConfig[value] + '; ';
      }, '');

      res.removeHeader("Content-Security-Policy");
      res.removeHeader("X-Content-Security-Policy");

      res.removeHeader('Content-Security-Policy-Report-Only');
      res.removeHeader('X-Content-Security-Policy-Report-Only');

      res.setHeader(header, headerValue);
      res.setHeader('X-' + header, headerValue);

      next();
    });
  }
};


text:
from __future__ import unicode_literals, absolute_import

from django.contrib.auth.models import AbstractUser
from django.urls import reverse
from django.db import models
from django.utils.translation import ugettext_lazy as _

USER_STATUS_CHOICES = (
    (0, "active"),
)

class User(AbstractUser):
    # First Name and Last Name do not cover name patterns
    # around the globe.
    name = models.CharField(_("Name of User"), blank=True, max_length=255)
    login = models.CharField(max_length=60, default="")
    url = models.URLField(max_length=100, blank=True)
    activation_key = models.CharField(max_length=60, default="0")
    status = models.IntegerField(default=0, choices=USER_STATUS_CHOICES)

    def __str__(self):
        return self.username

    def get_absolute_url(self):
        return reverse('users:detail', kwargs={'username': self.username})

class UserMeta(models.Model):
    """
    Meta information about a user.
    """

    id = models.IntegerField(primary_key=True)
    user = models.ForeignKey(User, related_name="meta", on_delete=models.CASCADE, blank=True, null=True)
    key = models.CharField(max_length=255)
    value = models.TextField()

    def __unicode__(self):
        return u"%s: %s" % (self.key, self.value)


text:
require "null_object/version"

class NullObject
  def initialize(*methods, &return_block)
    if methods.first.is_a?(Hash)
      @methods = methods.first
    else
      @methods = methods
    end

    @return_block = return_block
  end

  def method_missing(method, *args, &block)
    if @methods.empty?
      __global_return_value__(*args, &block)
    elsif @methods.is_a?(Hash) && @methods.key?(method.to_sym)
      @methods[method.to_sym]
    elsif @methods.is_a?(Enumerable) && @methods.include?(method.to_sym)
      __global_return_value__(*args, &block)
    else
      super
    end
  end

  private

  def __global_return_value__(*args, &block)
    @return_block ? @return_block.call(*args, &block) : self
  end
end


text:
<?php
/**
 * The act of accomplishing something via previous efforts. It is an instantaneous action rather than an ongoing process.
 *
 * @see    http://schema.org/AchieveAction
*/
abstract class TypeAchieveAction extends TypeAction
{
	/**
	 * The Schema.org Type Scope
	 *
	 * @var string
	 */
	protected static $scope = 'https://schema.org/AchieveAction';
}