text:
from torch.nn.modules.module import Module
from functions.nnd import NNDFunction

class NNDModule(Module):
    def forward(self, input1, input2):
        return NNDFunction()(input1, input2)

redpajama_set_name: RedPajamaGithub


text:
DIRDEPLOY='../cavobjects-github-page/'

echo "Push to github.com"
cd ${DIRDEPLOY}
git push origin gh-pages
echo "Deployed"


text:
var BbRouter = Backbone.Router.extend({
	routes: {
		'todo/todos': 'todo_index',
		'taste/entries': 'taste_index'
	},

	todo_index: function () {
		var todoTodosIndexView = new TodoTodosIndexView({ el: '#todos_index_container' });
	},

	taste_index: function () {
		var tasteEntriesIndexView = new TasteEntriesIndexView({ el: '#entries_index_container' });
	}
});

new BbRouter();

$(document).ready(function () {
	Backbone.history.start({pushState: true});
});


text:
<?php

declare(strict_types=1);

namespace App\Controllers\Account\Password;

use App\Models\Users\User;
use Config\Services;
use Gaur\Controller;
use Gaur\Controller\APIControllerTrait;
use Gaur\HTTP\Input;
use Gaur\HTTP\Response;
use Gaur\HTTP\StatusCode;
use Gaur\Security\CSRF;

class Create extends Controller
{
    use APIControllerTrait;

    /**
     * Default page for this controller
     *
     * @return void
     */
    protected function index(): void
    {
        // Prevent unauthorized access
        if (!isset($_SESSION['password_create'])) {
            Response::redirect('');
            return;
        }

        $data = [];

        // 60 minutes
        $data['csrf'] = (new CSRF(__CLASS__))->create(60);
        session_write_close();

        echo view('app/default/account/password/create', $data);
    }

    /**
     * Submit form
     *
     * @return void
     */
    protected function submit(): void
    {
        // Prevent unauthorized access
        if (!isset($_SESSION['password_create'])) {
            Response::setStatus(StatusCode::UNAUTHORIZED);
            Response::setJson();
            return;
        }

        if (!$this->validateInput()) {
            Response::setStatus(StatusCode::BAD_REQUEST);
            Response::setJson(
                [ 'errors' => $this->errors ]
            );
            return;
        }

        $uid = $_SESSION['password_create'];

        unset($_SESSION['password_create']);
        Services::session()->removeTempdata('password_create');
        (new CSRF(__CLASS__))->remove();
        session_write_close();

        (new User())->updatePassword(
            $uid,
            $this->finputs['password']
        );

        $message = 'Congratulations! your password has been successfully created. Now you can log in by using your new password.';

        Response::setStatus(StatusCode::OK);
        Response::setJson(
            [
                'data' => [
                    'message' => $message,
                    'link'    => 'account/login'
                ]
            ]
        );
    }

    /**
     * Validate user inputs
     *
     * @return bool
     */
    protected function validateInput(): bool
    {
        $rfields = [
            'password',
            'password-confirm'
        ];

        foreach ($rfields as $field) {
            $this->finputs[$field] = Input::data($field);

            if ($this->finputs[$field] === '') {
                $this->errors[] = 'Please fill all required fields!';
                goto exitValidation;
            }
        }

        if (mb_strlen($this->finputs['password']) < 4
            || mb_strlen($this->finputs['password']) > 64
        ) {
            $this->errors[] = 'Password must be between 4 and 64 characters!';
            goto exitValidation;
        }

        if ($this->finputs['password'] !== $this->finputs['password-confirm']) {
            $this->errors[] = 'Password confirmation does not match the password!';
            goto exitValidation;
        }

        exitValidation:
        return !$this->errors;
    }
}


text:
<link rel="import" href="../polymer/polymer.html">
<link rel="import" href="../paper-styles/paper-styles.html">

<dom-module id="paper-toolbar">

  <template>

      <content select=":not(.middle):not(.bottom)"></content>

      <content select=".middle"></content>

      <content select=".bottom"></content>

  </template>

</dom-module>


text:
/*
*
*  ©2016-2017 EdgeVerve Systems Limited (a fully owned Infosys subsidiary),
*  Bangalore, India. All Rights Reserved.
*
*/
var chalk = require('chalk');
var chai = require('chai');
var expect = chai.expect;
var FEEL = require('../../dist/feel');

describe(chalk.blue('Function definition grammar test'), function () {

    it('Successfully creates user defined function definition from simple expression', function (done) {
        var text = 'function(age) age < 21';

        try {
            var parsedGrammar = FEEL.parse(text);
            expect(parsedGrammar).not.to.be.undefined;
        } catch (e) {
            expect(parsedGrammar).not.to.be.undefined;
            expect(e).to.be.undefined;
        }
        done();
    });

    it('Successfully creates user defined function definition', function (done) {
        var text = 'function(rate, term, amount) (amount*rate/12)/(1-(1+rate/12)**-term)';

        try {
            var parsedGrammar = FEEL.parse(text);
            expect(parsedGrammar).not.to.be.undefined;
        } catch (e) {
            expect(parsedGrammar).not.to.be.undefined;
            expect(e).to.be.undefined;
        }
        done();
    });

    it('Successfully creates external function definition with string key', function (done) {
        var text = 'function(angle) external {java: {class : "java.lang.Math", "method signature": "cos(double)"}}';

        try {
            var parsedGrammar = FEEL.parse(text);
            expect(parsedGrammar).not.to.be.undefined;
        } catch (e) {
            expect(parsedGrammar).not.to.be.undefined;
            expect(e).to.be.undefined;
        }
        done();
    });

    it('Successfully creates external function definition with name key', function (done) {
        var text = 'function(angle) external {java: {class : "java.lang.Math", method signature: "cos(double)"}}';

        try {
            var parsedGrammar = FEEL.parse(text);
            expect(parsedGrammar).not.to.be.undefined;
        } catch (e) {
            expect(parsedGrammar).not.to.be.undefined;
            expect(e).to.be.undefined;
        }
        done();
    });

});


text:
layout: post
type: post
title:  "Honorable Mention 'Senator Domingo Faustino Sarmiento'"
date:   2016-11-30 12:00:00
comments: true
tags: [copla, gis, programming, geography, math, mathematics, geophysics, stepanov, knuth, stroustrup, generic, genericprogramming, generic programming, genericity, concepts, c++, cpp, c, java, dotnet, c#, csharp, python, ruby, javascript, haskell, dlang, rust, golang, eiffel]
---

On November 29, 2016 I had the honor and pleasure to receive, as a member of the scientific team of the [National Commission of the Outer Limit of the Continental Shelf (COPLA)](http://www.plataformaargentina.gov.ar/en/(copla_i)), the Honorable Mention "Senator Domingo Faustino Sarmiento", for our work, which made possible the determination of the new *Outer Limit of the Continental Shelf of the Argentine Republic*. [[1]](#Ref1)

The award was presented by the Vice President of the Nation, [Gabriela Michetti](https://twitter.com/gabimichetti) along with the Senator [Omar Perotti](https://twitter.com/omarperotti).

![Sarmiento1]({{ site.url }}/images/copla/sarmiento1.jpg)

![Sarmiento2]({{ site.url }}/images/copla/sarmiento2.png)

![Sarmiento3]({{ site.url }}/images/copla/sarmiento3.jpg)

---

> The Honorable Mention "Senator Domingo Faustino Sarmiento" is the highest award given by the Honorable Senate of the Nation to natural or legal persons of the cultural, sports, professional and academic work, for his **entrepreneurial work aimed at improving the quality of life of another individuals**, institutions and their communities.
The ceremony was made in the "Salón Azul" (Blue Room) of the Honorable Senate of the Nation.

---

The event was also attended by the vice minister and president of [COPLA](http://www.plataformaargentina.gov.ar/), [Carlos Foradori](https://twitter.com/cmforadori), former minister [Jorge Taiana](https://twitter.com/JorgeTaiana), former vice minister Fernando Petrella, congress representatives Mario Pais, Dalmacio Mera, Norma Durango, Beatriz Mirkin, and Daniela Castro. In addition they participated prominent figures of the academic and scientific scope.

Minister [Susana Malcorra](https://twitter.com/SusanaMalcorra) could not be present since she has traveled to Cuba for the funerals of Fidel Castro in representation of Argentina.

---

### References

[1] The Limit was approved on 11 March 2016 by the [United Nations](http://www.un.org/), by consensus, ie without a single vote against. See: [The Outer Limit of the Argentine Continental Shelf]({% post_url en/posts/2016-03-11-limit-approved %}).

---

### Links to News

- [https://twitter.com/SenadoArgentina/status/803687588653572096](https://twitter.com/SenadoArgentina/status/803687588653572096)
- [https://twitter.com/CancilleriaARG/status/803711684993024006](https://twitter.com/CancilleriaARG/status/803711684993024006)
- [https://twitter.com/gabimichetti/status/803697167063912448](https://twitter.com/gabimichetti/status/803697167063912448)
- [https://twitter.com/omarperotti/status/803723193844371456](https://twitter.com/omarperotti/status/803723193844371456)
- [http://omarperotti.com.ar/el-senado-distinguio-a-los-cientificos-que-trabajaron-en-el-nuevo-limite-de-la-plataforma-continental/](http://omarperotti.com.ar/el-senado-distinguio-a-los-cientificos-que-trabajaron-en-el-nuevo-limite-de-la-plataforma-continental/)
- [http://www.senado.gov.ar/prensa/14718/noticias](http://www.senado.gov.ar/prensa/14718/noticias)
- [https://www.mrecic.gov.ar/copla-recibio-la-maxima-distincion-del-senado](https://www.mrecic.gov.ar/copla-recibio-la-maxima-distincion-del-senado)

---


text:
package net.brutus5000.bireus.patching;

import io.sigpipe.jbsdiff.InvalidHeaderException;
import io.sigpipe.jbsdiff.Patch;
import lombok.extern.slf4j.Slf4j;
import lombok.val;
import net.brutus5000.bireus.data.DiffItem;
import net.brutus5000.bireus.data.Repository;
import net.brutus5000.bireus.service.ArchiveService;
import org.apache.commons.compress.compressors.CompressorException;
import org.apache.commons.io.FileUtils;

import java.io.IOException;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Objects;

@Slf4j
public class PatchTaskV1 extends PatchTask {
    @Override
    public int getVersion() {
        return 1;
    }

    @Override
    protected void patch(DiffItem diffItem, Path basePath, Path patchPath, boolean insideArchive) throws IOException {
        /*
          Important information on the way of updating:
          The "new" or "patched" repository is created inside the patchPath, by replacing the bsdiff4 patches with the actual files.
          This way the original repository is intact in case of an error.
          After patching is finished, the patchPath contains the checked out version and needs to replace the original basePath.
         */

        for (val item : diffItem.getItems()) {
            switch (item.getIoType()) {
                case FILE:
                    patchFile(item,
                            basePath.resolve(item.getName()),
                            patchPath.resolve(item.getName()),
                            insideArchive);
                    break;
                case DIRECTORY:
                    patchDirectory(item,
                            basePath.resolve(item.getName()),
                            patchPath.resolve(item.getName()),
                            insideArchive);
                    break;
            }
        }
    }

    private void patchFile(DiffItem item, Path basePath, Path patchPath, boolean insideArchive) throws IOException {
        log.debug("Patching file (action=`{}`, file=`{}`, relative path=`{}`)", item.getPatchAction(), item.getName(), patchPath.getFileName());

        patchEventListener.beginPatchingFile(basePath);
        switch (item.getPatchAction()) {
            case ADD:
                // do nothing: the new files are already in the patchPath
                break;
            case REMOVE:
                // do nothing: the files don't exist in the patchPath
                break;
            case ZIPDELTA:
                patchArchiveFile(item, basePath, patchPath);
                break;
            case BSDIFF:
                // apply the patch onto a temporary file and replace the file in patchPath
                // if checksum does not fit, load file from server and save in patchPath

                try {
                    // check the original file before patching (in basePath)
                    String crcBeforePatching = "0x" + Long.toHexString(FileUtils.checksumCRC32(basePath.toFile()));
                    if (!Objects.equals(item.getBaseCrc(), crcBeforePatching)) {
                        patchEventListener.crcMismatch(basePath);
                        throw new CrcMismatchException(basePath, item.getBaseCrc(), crcBeforePatching);
                    }

                    Path patchedTempPath = Paths.get(patchPath + ".patched");
                    try {
                        Patch.patch(basePath.toFile(), patchedTempPath.toFile(), patchPath.toFile());
                    } catch (CompressorException | InvalidHeaderException e) {
                        throw new IOException("Error on applying bsdiff4", e);
                    }

                    // the .patched-file replaces the original bsdiff4 file
                    Files.delete(patchPath);
                    Files.move(patchedTempPath, patchPath);

                    // check the final file after patching (in patchPath)
                    String crcAfterPatching = "0x" + Long.toHexString(FileUtils.checksumCRC32(patchPath.toFile()));
                    if (!Objects.equals(item.getTargetCrc(), crcAfterPatching)) {
                        val exception = new CrcMismatchException(patchPath, item.getTargetCrc(), crcAfterPatching);
                        log.error("CRC mismatch in patched file `{}` (expected={}, actual={}), patching aborted", patchPath, item.getTargetCrc(), crcAfterPatching, exception);
                        patchEventListener.crcMismatch(patchPath);
                        throw exception;
                    }
                } catch (CrcMismatchException e) {
                    if (insideArchive)
                        throw e;

                    log.info("Emergency fallback: download {} from original source", basePath);
                    Repository repository = repositoryService.getRepository();
                    Files.delete(patchPath);
                    URL fileUrl = new URL(repository.getUrl() + "/" + targetVersion + "/" + repository.getAbsolutePath().relativize(basePath).toUri().toURL());
                    downloadService.download(fileUrl, patchPath);
                }
                break;
            case UNCHANGED:
                // since unchanged, there is no file in the patchPath, we need to copy it from the basePath
                Files.copy(basePath, patchPath);
                break;
            default:
                log.error("Unexpected patch action `{}` on patching file", item.getPatchAction().toString());
        }
        patchEventListener.finishPatchingFile(basePath);
    }

    private void patchDirectory(DiffItem item, Path basePath, Path patchPath, boolean insideArchive) throws IOException {
        log.debug("Patching directory (action=`{}`, folder=`{}`, path=`{}`)", item.getPatchAction(), item.getName(), basePath.getFileName());

        patchEventListener.beginPatchingDirectory(basePath);
        switch (item.getPatchAction()) {
            case ADD:
                // do nothing: the new files are already in the patchPath
                break;
            case REMOVE:
                // do nothing: the files don't exist in the patchPath
                break;
            case DELTA:
                patch(item, basePath, patchPath, insideArchive);
                break;
            default:
                log.error("Unexpected patch action `{}` on patching directory", item.getPatchAction());
        }
        patchEventListener.finishPatchingDirectory(basePath);
    }

    private void patchArchiveFile(DiffItem item, Path basePath, Path patchPath) throws IOException {
        // we need a temporary folder to extract the zip content from the base files
        Path temporaryFolder = createTemporaryFolder("extracted_" + patchPath.getFileName() + "_");

        // extract the original files, attention: the patch files aren't zipped anymore
        log.debug("Extracting files to `{}`", temporaryFolder);
        ArchiveService.extractZip(basePath, temporaryFolder);

        // now we can start the patching
        patch(item, temporaryFolder, patchPath, true);

        // the patched files are now in patchPath
        // therefore we can remove the temporaryFolder
        log.debug("Removing the temporary folder {}", temporaryFolder);
        FileUtils.deleteDirectory(temporaryFolder.toFile());

        // patchPath is a folder with the patch files but is supposed to be the zip file,
        // therefore we rename the folder for a second before compressing
        log.debug("Re-compressing files at {}", patchPath);
        Path intermediateFolder = Files.move(patchPath, Paths.get(patchPath + ".patched"));
        ArchiveService.compressFolderToZip(intermediateFolder, patchPath);
        FileUtils.deleteDirectory(intermediateFolder.toFile());
    }
}


text:
- [Using the Logging Service in OCI with ORDS](./oci/ords-oci-logging.md)
- [Using the Bastion as a Service to access OCI Cloud Databases/ORDS/Database Actions using Private IPs](./oci/bastion-dbcs.md)

## Current Livelabs

- [Modern App Dev with Oracle REST Data Services](https://apexapps.oracle.com/pls/apex/dbpm/r/livelabs/view-workshop?wid=815&clear=180&session=109157054651263)
- [Choose your Own JSON Adventure: Relational or Document Store](https://apexapps.oracle.com/pls/apex/dbpm/r/livelabs/view-workshop?wid=813&clear=180&session=109157054651263)
- [RESTful Services for your Autonomous Database](https://apexapps.oracle.com/pls/apex/dbpm/r/livelabs/view-workshop?wid=578&clear=180&session=109157054651263)


text:
namespace Dike.Core.Timing
{
    using System;

    /// <summary>
    /// Represents a date time range.
    /// </summary>
    /// <seealso cref="Dike.Core.Timing.IDateTimeRange" />
    [Serializable]
    public class DateTimeRange
        : IDateTimeRange
    {
        #region Constructors

        /// <summary>
        /// Initializes a new instance of the <see cref="DateTimeRange"/> class.
        /// </summary>
        public DateTimeRange()
        {
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="DateTimeRange"/> class.
        /// </summary>
        /// <param name="startTime">The start time.</param>
        /// <param name="endTime">The end time.</param>
        public DateTimeRange(DateTime startTime, DateTime endTime)
        {
            StartTime = startTime;
            EndTime = endTime;
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="DateTimeRange"/> class.
        /// </summary>
        /// <param name="dateTimeRange">The date time range.</param>
        public DateTimeRange(IDateTimeRange dateTimeRange)
        {
            StartTime = dateTimeRange.StartTime;
            EndTime = dateTimeRange.EndTime;
        }

        #endregion Constructors

        #region Properties

        /// <summary>
        /// Gets last 30 days date time range.
        /// </summary>
        /// <value>Last 30 days date time range.</value>
        public static DateTimeRange Last30Days
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(now.AddDays(-30), now);
            }
        }

        /// <summary>
        /// Gets last 30 days (expect today) date time range.
        /// </summary>
        /// <value>Last 30 days (expect today) date time range.</value>
        public static DateTimeRange Last30DaysExceptToday
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(now.Date.AddDays(-30), now.Date.AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets last 7 days date time range.
        /// </summary>
        /// <value>Last 7 days date time range.</value>
        public static DateTimeRange Last7Days
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(now.AddDays(-7), now);
            }
        }

        /// <summary>
        /// Gets last 7 days (expect today) date time range.
        /// </summary>
        /// <value>Last 7 days (expect today) date time range.</value>
        public static DateTimeRange Last7DaysExceptToday
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(now.Date.AddDays(-7), now.Date.AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets last months date time range.
        /// </summary>
        /// <value>Last months date time range.</value>
        public static DateTimeRange LastMonth
        {
            get
            {
                DateTime now = Now;
                DateTime startTime = now.Date.AddDays(-now.Day + 1).AddMonths(-1);
                DateTime endTime = startTime.AddMonths(1).AddMilliseconds(-1);
                return new DateTimeRange(startTime, endTime);
            }
        }

        /// <summary>
        /// Gets last year date time range.
        /// </summary>
        /// <value>Last year date time range.</value>
        public static DateTimeRange LastYear
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(new DateTime(now.Year - 1, 1, 1), new DateTime(now.Year, 1, 1).AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets next months date time range.
        /// </summary>
        /// <value>Next months date time range.</value>
        public static DateTimeRange NextMonth
        {
            get
            {
                DateTime now = Now;
                DateTime startTime = now.Date.AddDays(-now.Day + 1).AddMonths(1);
                DateTime endTime = startTime.AddMonths(1).AddMilliseconds(-1);
                return new DateTimeRange(startTime, endTime);
            }
        }

        /// <summary>
        /// Gets next year date time range.
        /// </summary>
        /// <value>Next year date time range.</value>
        public static DateTimeRange NextYear
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(new DateTime(now.Year + 1, 1, 1), new DateTime(now.Year + 2, 1, 1).AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets this months date time range.
        /// </summary>
        /// <value>This months date time range.</value>
        public static DateTimeRange ThisMonth
        {
            get
            {
                DateTime now = Now;
                DateTime startTime = now.Date.AddDays(-now.Day + 1);
                DateTime endTime = startTime.AddMonths(1).AddMilliseconds(-1);
                return new DateTimeRange(startTime, endTime);
            }
        }

        /// <summary>
        /// Gets this year date time range.
        /// </summary>
        /// <value>This year date time range.</value>
        public static DateTimeRange ThisYear
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(new DateTime(now.Year, 1, 1), new DateTime(now.Year + 1, 1, 1).AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets todays date time range.
        /// </summary>
        /// <value>Todays date time range.</value>
        public static DateTimeRange Today
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(now.Date, now.Date.AddDays(1).AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets tomorrows date time range.
        /// </summary>
        /// <value>Tomorrows date time range.</value>
        public static DateTimeRange Tomorrow
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(now.Date.AddDays(1), now.Date.AddDays(2).AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets yesterdays date time range.
        /// </summary>
        /// <value>Yesterdays date time range.</value>
        public static DateTimeRange Yesterday
        {
            get
            {
                DateTime now = Now;
                return new DateTimeRange(now.Date.AddDays(-1), now.Date.AddMilliseconds(-1));
            }
        }

        /// <summary>
        /// Gets or sets the end time.
        /// </summary>
        /// <value>The end time.</value>
        public DateTime EndTime
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the start time.
        /// </summary>
        /// <value>The start time.</value>
        public DateTime StartTime
        {
            get;
            set;
        }

        /// <summary>
        /// Gets the current date time.
        /// </summary>
        /// <value>The current date time.</value>
        private static DateTime Now
            => Clock.Now;

        #endregion Properties

        #region Methods

        /// <summary>
        /// Returns a <see cref="string" /> that represents this instance.
        /// </summary>
        /// <returns>A <see cref="string" /> that represents this instance.</returns>
        public override string ToString()
            => $"[{StartTime} - {EndTime}]";

        #endregion Methods
    }
}


text:
/*******************************
            Reveal
*******************************/

html /deep/ {

/* Make sure hovered element is on top of other reveal */

/*******************************
              Types
*******************************/

/*--------------
      Slide
---------------*/

/*--------------
      Fade
---------------*/

/*--------------
      Move
---------------*/

/*--------------
     Rotate
---------------*/

/*******************************
              States
*******************************/

/*******************************
           Variations
*******************************/

/*--------------
     Masked
---------------*/

/*--------------
     Instant
---------------*/

/*--------------
     Sizing
---------------*/

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/

}
html /deep/ .ui.reveal {
  display: inline-block;
  position: relative !important;
  font-size: 0em !important;
}
html /deep/ .ui.reveal > .visible.content {
  position: absolute !important;
  top: 0em !important;
  left: 0em !important;
  z-index: 3 !important;
  -webkit-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
          transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
}
html /deep/ .ui.reveal > .hidden.content {
  position: relative !important;
  z-index: 2 !important;
}
html /deep/ .ui.reveal:hover .visible.content {
  z-index: 4 !important;
}
html /deep/ .ui.slide.reveal {
  position: relative !important;
  overflow: hidden !important;
  white-space: nowrap;
}
html /deep/ .ui.slide.reveal > .content {
  display: block;
  float: left;
  margin: 0em;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
          transition: transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
}
html /deep/ .ui.slide.reveal > .visible.content {
  position: relative !important;
}
html /deep/ .ui.slide.reveal > .hidden.content {
  position: absolute !important;
  left: 0% !important;
  width: 100% !important;
  -webkit-transform: translateX(100%) !important;
      -ms-transform: translateX(100%) !important;
          transform: translateX(100%) !important;
}
html /deep/ .ui.slide.reveal:hover > .visible.content {
  -webkit-transform: translateX(-100%) !important;
      -ms-transform: translateX(-100%) !important;
          transform: translateX(-100%) !important;
}
html /deep/ .ui.slide.reveal:hover > .hidden.content {
  -webkit-transform: translateX(0%) !important;
      -ms-transform: translateX(0%) !important;
          transform: translateX(0%) !important;
}
html /deep/ .ui.slide.right.reveal > .visible.content {
  -webkit-transform: translateX(0%) !important;
      -ms-transform: translateX(0%) !important;
          transform: translateX(0%) !important;
}
html /deep/ .ui.slide.right.reveal > .hidden.content {
  -webkit-transform: translateX(-100%) !important;
      -ms-transform: translateX(-100%) !important;
          transform: translateX(-100%) !important;
}
html /deep/ .ui.slide.right.reveal:hover > .visible.content {
  -webkit-transform: translateX(100%) !important;
      -ms-transform: translateX(100%) !important;
          transform: translateX(100%) !important;
}
html /deep/ .ui.slide.right.reveal:hover > .hidden.content {
  -webkit-transform: translateX(0%) !important;
      -ms-transform: translateX(0%) !important;
          transform: translateX(0%) !important;
}
html /deep/ .ui.slide.up.reveal > .hidden.content {
  -webkit-transform: translateY(100%) !important;
      -ms-transform: translateY(100%) !important;
          transform: translateY(100%) !important;
}
html /deep/ .ui.slide.up.reveal:hover > .visible.content {
  -webkit-transform: translateY(-100%) !important;
      -ms-transform: translateY(-100%) !important;
          transform: translateY(-100%) !important;
}
html /deep/ .ui.slide.up.reveal:hover > .hidden.content {
  -webkit-transform: translateY(0%) !important;
      -ms-transform: translateY(0%) !important;
          transform: translateY(0%) !important;
}
html /deep/ .ui.slide.down.reveal > .hidden.content {
  -webkit-transform: translateY(-100%) !important;
      -ms-transform: translateY(-100%) !important;
          transform: translateY(-100%) !important;
}
html /deep/ .ui.slide.down.reveal:hover > .visible.content {
  -webkit-transform: translateY(100%) !important;
      -ms-transform: translateY(100%) !important;
          transform: translateY(100%) !important;
}
html /deep/ .ui.slide.down.reveal:hover > .hidden.content {
  -webkit-transform: translateY(0%) !important;
      -ms-transform: translateY(0%) !important;
          transform: translateY(0%) !important;
}
html /deep/ .ui.fade.reveal > .visible.content {
  opacity: 1;
}
html /deep/ .ui.fade.reveal:hover > .visible.content {
  opacity: 0;
}
html /deep/ .ui.move.reveal {
  position: relative !important;
  overflow: hidden !important;
  white-space: nowrap;
}
html /deep/ .ui.move.reveal > .content {
  display: block;
  float: left;
  margin: 0em;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
          transition: transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
}
html /deep/ .ui.move.reveal > .visible.content {
  position: relative !important;
}
html /deep/ .ui.move.reveal > .hidden.content {
  position: absolute !important;
  left: 0% !important;
  width: 100% !important;
}
html /deep/ .ui.move.reveal:hover > .visible.content {
  -webkit-transform: translateX(-100%) !important;
      -ms-transform: translateX(-100%) !important;
          transform: translateX(-100%) !important;
}
html /deep/ .ui.move.right.reveal:hover > .visible.content {
  -webkit-transform: translateX(100%) !important;
      -ms-transform: translateX(100%) !important;
          transform: translateX(100%) !important;
}
html /deep/ .ui.move.up.reveal:hover > .visible.content {
  -webkit-transform: translateY(-100%) !important;
      -ms-transform: translateY(-100%) !important;
          transform: translateY(-100%) !important;
}
html /deep/ .ui.move.down.reveal:hover > .visible.content {
  -webkit-transform: translateY(100%) !important;
      -ms-transform: translateY(100%) !important;
          transform: translateY(100%) !important;
}
html /deep/ .ui.rotate.reveal > .visible.content {
  -webkit-transition-duration: 0.8s;
          transition-duration: 0.8s;
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
}
html /deep/ .ui.rotate.reveal > .visible.content,
html /deep/ .ui.rotate.right.reveal > .visible.content {
  -webkit-transform-origin: bottom right;
      -ms-transform-origin: bottom right;
          transform-origin: bottom right;
}
html /deep/ .ui.rotate.reveal:hover > .visible.content,
html /deep/ .ui.rotate.right.reveal:hover > .visible.content {
  -webkit-transform: rotate(110deg);
      -ms-transform: rotate(110deg);
          transform: rotate(110deg);
}
html /deep/ .ui.rotate.left.reveal > .visible.content {
  -webkit-transform-origin: bottom left;
      -ms-transform-origin: bottom left;
          transform-origin: bottom left;
}
html /deep/ .ui.rotate.left.reveal:hover > .visible.content {
  -webkit-transform: rotate(-110deg);
      -ms-transform: rotate(-110deg);
          transform: rotate(-110deg);
}
html /deep/ .ui.disabled.reveal {
  opacity: 1 !important;
}
html /deep/ .ui.disabled.reveal > .content {
  -webkit-transition: none !important;
          transition: none !important;
}
html /deep/ .ui.disabled.reveal:hover > .visible.content {
  position: static !important;
  display: block !important;
  opacity: 1 !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  -webkit-transform: none !important;
      -ms-transform: none !important;
          transform: none !important;
}
html /deep/ .ui.disabled.reveal:hover > .hidden.content {
  display: none !important;
}
html /deep/ .ui.masked.reveal {
  overflow: hidden;
}
html /deep/ .ui.instant.reveal > .content {
  -webkit-transition-delay: 0s !important;
          transition-delay: 0s !important;
}
html /deep/ .ui.reveal > .content {
  font-size: 1rem !important;
}