diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2025-05-20 18:44:34 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2025-05-20 18:44:34 -0300 |
commit | 946dea4f6d153c04d31589c610141c96b0f39c12 (patch) | |
tree | 6a399e4eed46af042ed338015d85e931cfe1d8a5 /2019 | |
parent | 8ec513e5b26f0043cb09ad4dc245076554c0fe47 (diff) | |
download | slides-master.tar.gz slides-master.tar.bz2 |
Diffstat (limited to '2019')
l--------- | 2019/salve-quem-puder/css | 1 | ||||
-rw-r--r-- | 2019/salve-quem-puder/index.html | 437 | ||||
-rw-r--r-- | 2019/salve-quem-puder/index.md | 156 | ||||
l--------- | 2019/salve-quem-puder/reveal.js | 1 |
4 files changed, 595 insertions, 0 deletions
diff --git a/2019/salve-quem-puder/css b/2019/salve-quem-puder/css new file mode 120000 index 0000000..8e8b6d0 --- /dev/null +++ b/2019/salve-quem-puder/css @@ -0,0 +1 @@ +../../css
\ No newline at end of file diff --git a/2019/salve-quem-puder/index.html b/2019/salve-quem-puder/index.html new file mode 100644 index 0000000..d7bd8b6 --- /dev/null +++ b/2019/salve-quem-puder/index.html @@ -0,0 +1,437 @@ +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <meta name="generator" content="pandoc"> + <meta name="author" content="06/12/2019"> + <title>Salve quem puder - o apagão de dados no Brasil</title> + <meta name="apple-mobile-web-app-capable" content="yes"> + <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui"> + <link rel="stylesheet" href="reveal.js/dist/reset.css"> + <link rel="stylesheet" href="reveal.js/dist/reveal.css"> + <style> + .reveal .sourceCode { /* see #7635 */ + overflow: visible; + } + code{white-space: pre-wrap;} + span.smallcaps{font-variant: small-caps;} + span.underline{text-decoration: underline;} + div.column{display: inline-block; vertical-align: top; width: 50%;} + div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} + ul.task-list{list-style: none;} + </style> + <link rel="stylesheet" href="reveal.js/dist/theme/moon.css" id="theme"> + <link rel="stylesheet" href="css/index.css"/> +</head> +<body> + <div class="reveal"> + <div class="slides"> + +<section id="title-slide"> + <h1 class="title">Salve quem puder - o apagão de dados no Brasil</h1> + <p class="author">06/12/2019</p> +</section> + +<section +id="o-que-acontece-no-ambiente-no-território-e-com-o-povo-acontece-com-os-dados" +class="slide level1"> +<h1>O que acontece no ambiente, no território e com o povo, acontece com +os dados</h1> +<!-- +* Governos também são fenômenos psicológicos. +* Tensionamento entre segredo e transparência. +* Durante transições de regime, dados são destruídos. Exemplo: arquivos da Stasi. +* Transparência e dados abertos: existem regulações e obrigações legais em diversos países para tornar públicas as informações do governo. +* Mesmo assim é comum que conjuntos de dados desapareçam, por fins políticos ou não. +* Ataques informacionais / operações psicológicas: informações falsas, excesso de informações, operações diversionistas.... e agora a nova forma de censura: o apagão de dados! +* O acesso à informação +--> +<p>A participação na política está ligada ao acesso de informação +organizada, estruturada e de qualidade, especialmente dos dados +produzidos pelo ou sobre o governo.</p> +<!-- +# Onde estamos? + +* Brasil 2019: não só as florestas estão ainda mais ameaças, como também as florestas de dados digitais. +* Brasil - Construtor de Desertos +* Brasil Hostil - https://brasilhostil.org +* Ocorre no território e ocorre na web +* 2018 - Operação pré-detonação. +--> +</section> +<section id="regulação" class="slide level1"> +<h1>Regulação</h1> +<p>Só pra constar…</p> +</section> +<section id="marcos-internacionais-ratificados-pelo-brasil" +class="slide level1"> +<h1>Marcos internacionais ratificados pelo Brasil</h1> +<ul> +<li class="fragment">Declaração Universal dos Direitos Humanos (Artigo +19).</li> +<li class="fragment">Pacto Internacional pelos Direitos Civis e +Políticos.</li> +<li class="fragment">Convenção Americana sobre Direitos Humanos (Pacto +de San José da Costa Rica), todos ratificados pelo Brasil.</li> +</ul> +<!-- +* [Declaração da ONU, OEA e OSCE de 2004](http://www.oas.org/es/cidh/expresion/showarticle.asp?artID=319&lID=2): + "El derecho de acceso a la información en poder de las autoridades públicas + es un derecho humano fundamental que debería aplicarse a nivel nacional a + través de legislación global (por ejemplo, las Leyes de Libertad de Acceso a + Información) basada en el principio de máxima divulgación, el cual establece + la presunción de que toda la información es accesible, sujeto solamente a un + sistema restringido de excepciones." +--> +</section> +<section id="alguns-marcos-nacionais" class="slide level1"> +<h1>Alguns marcos nacionais</h1> +<ul> +<li class="fragment">EUA: <a +href="https://www.congress.gov/bill/115th-congress/house-bill/4174/text#toc-H8E449FBAEFA34E45A6F1F20EFB13ED95">Open +Data Act de 2019</a> e plataforma <a +href="https://www.data.gov/open-gov/">data.gov</a>.</li> +<li class="fragment">União Européia: <a +href="https://ec.europa.eu/digital-single-market/en/european-legislation-reuse-public-sector-information">Regulação +sobre dados abertos e uso de informação pública</a>.</li> +</ul> +</section> +<section id="marcos-brasileiros---1988---2016" class="slide level1"> +<h1>Marcos Brasileiros - 1988 - 2016</h1> +<ul> +<li class="fragment">1988: habeas data (par. LXXII do artigo 5 da +Consituição Federal): “assegurar o conhecimento de informações relativas +à pessoa do impetrante, constantes de registros ou bancos de dados de +entidades governamentais ou de caráter público”.</li> +<li class="fragment">2011: Lei 12527/2011 - LAI – Lei de Acesso à +informação; regulamentada via Decreto 7724/2012.</li> +<li class="fragment">2012: +<ul> +<li class="fragment">Infraestrutura Nacional de Dados Abertos - +INDA.</li> +<li class="fragment">Portal Brasileiro de Dados Abertos.</li> +<li class="fragment">Decreto 7845/2012, que “regulamenta procedimentos +para credenciamento de segurança e tratamento de informação classificada +em qualquer grau de sigilo”.</li> +</ul></li> +<li class="fragment">2016: Decreto Federal nº 8.777/2016: Política de +Dados Abertos do Executivo: publicação, em formato aberto, de dados das +bases do executivo federal.</li> +</ul> +</section> +<section id="marcos-brasileiros---2016---2018" class="slide level1"> +<h1>Marcos Brasileiros - 2016 - 2018</h1> +<ul> +<li class="fragment">2017: +<ul> +<li class="fragment">Dados Abertos: Resolução n.º 3, de 13 de outubro de +2017, do Comitê Gestor da INDA.</li> +<li class="fragment">CGU lançou um Painel de Monitoramento: +http://paineis.cgu.gov.br/dadosabertos/</li> +</ul></li> +<li class="fragment">2018: Lei Geral de Proteção de dados – LGPD, em seu +Capítulo IV, onde é legislado o tratamento de dados pessoais pelo Poder +Público.</li> +</ul> +</section> +<section id="marcos-brasileiros---evolução" class="slide level1"> +<h1>Marcos Brasileiros - evolução</h1> +<ul> +<li class="fragment">Pressão da sociedade por abertura produz uma +regulação ascendente em direção ao acesso.</li> +<li class="fragment">Dados e formatos abertos são uma conquista +especialmente do Movimento do Software Livre no Brasil.</li> +<li class="fragment">Há um tensionamento entre liberação de todas +informações, exceto dados pessoais ou sigilosas.</li> +</ul> +</section> +<section id="marcos-brasileiros---2019" class="slide level1"> +<h1>Marcos Brasileiros - 2019</h1> +<p>Só pra sentir um pouco do gosto amargo:</p> +<ul> +<li class="fragment"><p>Decreto 9.756/2019: “portal único gov.br”: +portais do governo federal devem se movidos para um portal único; +controle mais centralizado e apagão de informações +não-migradas.</p></li> +<li class="fragment"><p>Alteração do Decreto nº 8.777/2016 (Política de +Dados Abertos): para dispor sobre a gestão e os direitos de uso de dados +abertos através do Decreto 9903/2019, onde é explicitado que as bases de +dados estão cobertas pela Lei 9610/1998 (Direito Autoral). Esta mudança +é um sinal de alerta à possibilidade de privatização de bases de dados +governamentais – o que já seria fato gravíssimo – e consequente +restrição de acesso aos mesmos.</p></li> +</ul> +</section> +<section id="marcos-brasileiros---2019-1" class="slide level1"> +<h1>Marcos Brasileiros - 2019</h1> +<ul> +<li class="fragment"><p>Governo tentou colocar servidores comissionados +para impor sigilo ultrassecreto a dados públicos pelo Decreto +9.690/2019, mas voltou atrás desta decisão no Decreto +9716/2019.</p></li> +<li class="fragment"><p>Edição do Decreto 10.046/20191: introduz +conceito de confidencialidade como atributo da informação: “propriedade +que impede que a informação fique disponível ou possa ser revelada à +pessoa natural, sistema, órgão ou entidade não autorizado e não +credenciado”. Contradiz LGPD e outros marcos.</p></li> +</ul> +</section> +<section id="resumo-estratégias-do-apagão" class="slide level1"> +<h1>Resumo: estratégias do apagão</h1> +<ul> +<li class="fragment">Retirada de conteúdos.</li> +<li class="fragment">Declarações de sigilo de dados.</li> +<li class="fragment">Alegação de que a divulgação fere direitos +autorais.</li> +<li class="fragment">Perseguição de cientistas, jornalistas…</li> +<li class="fragment">Sucateamento dos órgãos de produção e gestão de +dados.</li> +<li class="fragment">Deixar de atualizar conjuntos de dados.</li> +<li class="fragment">Desmerecimento dos dados e seus produtores.</li> +</ul> +</section> +<section id="o-que-é-salvaguarda-de-dados" class="slide level1"> +<h1>O que é salvaguarda de dados?</h1> +</section> +<section id="por-que-é-importante" class="slide level1"> +<h1>Por que é importante?</h1> +<ol type="1"> +<li class="fragment">Não há garantia de que qualquer dado disponível na +internet assim permaneça indefinidamente.</li> +<li class="fragment">Os repositórios de dados tem sustentabilidade +variada.</li> +<li class="fragment">Cortes de custos ou critérios político-ideológicos +podem causar a retirada de dados da internet.</li> +<li class="fragment">Outras falhas podem comprometer a disponibilidade +de dados.</li> +</ol> +</section> +<section id="o-que-possibilita" class="slide level1"> +<h1>O que possibilita?</h1> +<ul> +<li class="fragment">Acesso aos dados mesmo que a fonte esteja +indisponível.</li> +<li class="fragment">Redundância: cópias adicionais aumentam a +tolerância à falhas.</li> +<li class="fragment">Integridade: cópias adicionais ajudam a detectar +inconsistências e modificações nas informações.</li> +<li class="fragment">Valor histórico: cópias feitas em dadas diversas +possibilitam de análises temporais.</li> +<li class="fragment">Análises robustas: grandes massas de dados são mais +fáceis de serem analisadas se estiverem disponíveis na instituição.</li> +</ul> +</section> +<section id="exemplos-de-análises" class="slide level1"> +<h1>Exemplos de análises</h1> +<ul> +<li class="fragment">Fiscalização direta da produção oficial do governo +acessível publicamente na rede.</li> +<li class="fragment">Levantamento do “diagrama de rede” da estrutura do +governo: onde estão os dados, se estão em datacenters públicos ou sendo +migrados para a iniciativa privada.</li> +</ul> +</section> +<section id="como-ajudar" class="slide level1"> +<h1>Como ajudar?</h1> +<ul> +<li class="fragment">Iniciativas pessoas, simples ou sofisticadas.</li> +<li class="fragment">Iniciativas coletivas, institucionais ou não.</li> +<li class="fragment">Por uma Rede de Salvaguarda de Dados.</li> +</ul> +<!-- +# Web? + +* É dinâmica. +* Historicidade, genealogia: capacidade + +# Inventário + +* São quantos sites do governo? +* Qual o tamanho? +--> +</section> + </div> + </div> + + <script src="reveal.js/dist/reveal.js"></script> + + <!-- reveal.js plugins --> + <script src="reveal.js/plugin/notes/notes.js"></script> + <script src="reveal.js/plugin/search/search.js"></script> + <script src="reveal.js/plugin/zoom/zoom.js"></script> + <script src="reveal.js/plugin/math/math.js"></script> + + <script> + + // Full list of configuration options available at: + // https://revealjs.com/config/ + Reveal.initialize({ + // Display controls in the bottom right corner + controls: true, + + // Help the user learn the controls by providing hints, for example by + // bouncing the down arrow when they first encounter a vertical slide + controlsTutorial: true, + + // Determines where controls appear, "edges" or "bottom-right" + controlsLayout: 'bottom-right', + + // Visibility rule for backwards navigation arrows; "faded", "hidden" + // or "visible" + controlsBackArrows: 'faded', + + // Display a presentation progress bar + progress: true, + + // Display the page number of the current slide + slideNumber: false, + + // 'all', 'print', or 'speaker' + showSlideNumber: 'all', + + // Add the current slide number to the URL hash so that reloading the + // page/copying the URL will return you to the same slide + hash: true, + + // Start with 1 for the hash rather than 0 + hashOneBasedIndex: false, + + // Flags if we should monitor the hash and change slides accordingly + respondToHashChanges: true, + + // Push each slide change to the browser history + history: false, + + // Enable keyboard shortcuts for navigation + keyboard: true, + + // Enable the slide overview mode + overview: true, + + // Disables the default reveal.js slide layout (scaling and centering) + // so that you can use custom CSS layout + disableLayout: false, + + // Vertical centering of slides + center: true, + + // Enables touch navigation on devices with touch input + touch: true, + + // Loop the presentation + loop: false, + + // Change the presentation direction to be RTL + rtl: false, + + // see https://revealjs.com/vertical-slides/#navigation-mode + navigationMode: 'default', + + // Randomizes the order of slides each time the presentation loads + shuffle: false, + + // Turns fragments on and off globally + fragments: true, + + // Flags whether to include the current fragment in the URL, + // so that reloading brings you to the same fragment position + fragmentInURL: true, + + // Flags if the presentation is running in an embedded mode, + // i.e. contained within a limited portion of the screen + embedded: false, + + // Flags if we should show a help overlay when the questionmark + // key is pressed + help: true, + + // Flags if it should be possible to pause the presentation (blackout) + pause: true, + + // Flags if speaker notes should be visible to all viewers + showNotes: false, + + // Global override for autoplaying embedded media (null/true/false) + autoPlayMedia: null, + + // Global override for preloading lazy-loaded iframes (null/true/false) + preloadIframes: null, + + // Number of milliseconds between automatically proceeding to the + // next slide, disabled when set to 0, this value can be overwritten + // by using a data-autoslide attribute on your slides + autoSlide: 0, + + // Stop auto-sliding after user input + autoSlideStoppable: true, + + // Use this method for navigation when auto-sliding + autoSlideMethod: null, + + // Specify the average time in seconds that you think you will spend + // presenting each slide. This is used to show a pacing timer in the + // speaker view + defaultTiming: null, + + // Enable slide navigation via mouse wheel + mouseWheel: false, + + // The display mode that will be used to show slides + display: 'block', + + // Hide cursor if inactive + hideInactiveCursor: true, + + // Time before the cursor is hidden (in ms) + hideCursorTime: 5000, + + // Opens links in an iframe preview overlay + previewLinks: false, + + // Transition style (none/fade/slide/convex/concave/zoom) + transition: 'slide', + + // Transition speed (default/fast/slow) + transitionSpeed: 'default', + + // Transition style for full page slide backgrounds + // (none/fade/slide/convex/concave/zoom) + backgroundTransition: 'fade', + + // Number of slides away from the current that are visible + viewDistance: 3, + + // Number of slides away from the current that are visible on mobile + // devices. It is advisable to set this to a lower number than + // viewDistance in order to save resources. + mobileViewDistance: 2, + + math: { + mathjax: '/usr/share/javascript/mathjax/MathJax.js', + config: 'TeX-AMS_HTML-full', + tex2jax: { + inlineMath: [['\\(','\\)']], + displayMath: [['\\[','\\]']], + balanceBraces: true, + processEscapes: false, + processRefs: true, + processEnvironments: true, + preview: 'TeX', + skipTags: ['script','noscript','style','textarea','pre','code'], + ignoreClass: 'tex2jax_ignore', + processClass: 'tex2jax_process' + }, + }, + + // reveal.js plugins + plugins: [ + RevealMath, + RevealNotes, + RevealSearch, + RevealZoom + ] + }); + </script> + </body> +</html> diff --git a/2019/salve-quem-puder/index.md b/2019/salve-quem-puder/index.md new file mode 100644 index 0000000..ee3e2ef --- /dev/null +++ b/2019/salve-quem-puder/index.md @@ -0,0 +1,156 @@ +% Salve quem puder - o apagão de dados no Brasil +% 06/12/2019 + +# O que acontece no ambiente, no território e com o povo, acontece com os dados + +<!-- +* Governos também são fenômenos psicológicos. +* Tensionamento entre segredo e transparência. +* Durante transições de regime, dados são destruídos. Exemplo: arquivos da Stasi. +* Transparência e dados abertos: existem regulações e obrigações legais em diversos países para tornar públicas as informações do governo. +* Mesmo assim é comum que conjuntos de dados desapareçam, por fins políticos ou não. +* Ataques informacionais / operações psicológicas: informações falsas, excesso de informações, operações diversionistas.... e agora a nova forma de censura: o apagão de dados! +* O acesso à informação +--> + +A participação na política está ligada ao acesso de informação organizada, +estruturada e de qualidade, especialmente dos dados produzidos pelo ou sobre o +governo. + +<!-- +# Onde estamos? + +* Brasil 2019: não só as florestas estão ainda mais ameaças, como também as florestas de dados digitais. +* Brasil - Construtor de Desertos +* Brasil Hostil - https://brasilhostil.org +* Ocorre no território e ocorre na web +* 2018 - Operação pré-detonação. +--> + +# Regulação + +Só pra constar... + +# Marcos internacionais ratificados pelo Brasil + +* Declaração Universal dos Direitos Humanos (Artigo 19). +* Pacto Internacional pelos Direitos Civis e Políticos. +* Convenção Americana sobre Direitos Humanos (Pacto de San José da Costa Rica), todos ratificados pelo Brasil. + +<!-- +* [Declaração da ONU, OEA e OSCE de 2004](http://www.oas.org/es/cidh/expresion/showarticle.asp?artID=319&lID=2): + "El derecho de acceso a la información en poder de las autoridades públicas + es un derecho humano fundamental que debería aplicarse a nivel nacional a + través de legislación global (por ejemplo, las Leyes de Libertad de Acceso a + Información) basada en el principio de máxima divulgación, el cual establece + la presunción de que toda la información es accesible, sujeto solamente a un + sistema restringido de excepciones." +--> + +# Alguns marcos nacionais + +* EUA: [Open Data Act de 2019](https://www.congress.gov/bill/115th-congress/house-bill/4174/text#toc-H8E449FBAEFA34E45A6F1F20EFB13ED95) e plataforma [data.gov](https://www.data.gov/open-gov/). +* União Européia: [Regulação sobre dados abertos e uso de informação pública](https://ec.europa.eu/digital-single-market/en/european-legislation-reuse-public-sector-information). + +# Marcos Brasileiros - 1988 - 2016 + +* 1988: habeas data (par. LXXII do artigo 5 da Consituição Federal): + "assegurar o conhecimento de informações relativas à + pessoa do impetrante, constantes de registros ou bancos de dados de entidades governamentais ou de caráter público". +* 2011: Lei 12527/2011 - LAI – Lei de Acesso à informação; regulamentada via Decreto 7724/2012. +* 2012: + * Infraestrutura Nacional de Dados Abertos - INDA. + * Portal Brasileiro de Dados Abertos. + * Decreto 7845/2012, que “regulamenta procedimentos para credenciamento de segurança e tratamento de informação classificada em qualquer grau de sigilo”. +* 2016: Decreto Federal nº 8.777/2016: Política de Dados Abertos do Executivo: publicação, em formato aberto, de dados das bases do executivo federal. + +# Marcos Brasileiros - 2016 - 2018 + +* 2017: + * Dados Abertos: Resolução n.º 3, de 13 de outubro de 2017, do Comitê Gestor da INDA. + * CGU lançou um Painel de Monitoramento: http://paineis.cgu.gov.br/dadosabertos/ +* 2018: Lei Geral de Proteção de dados – LGPD, em seu Capítulo IV, onde é legislado o tratamento de dados pessoais pelo Poder Público. + +# Marcos Brasileiros - evolução + +* Pressão da sociedade por abertura produz uma regulação ascendente em direção ao acesso. +* Dados e formatos abertos são uma conquista especialmente do Movimento do Software Livre no Brasil. +* Há um tensionamento entre liberação de todas informações, exceto dados pessoais ou sigilosas. + +# Marcos Brasileiros - 2019 + +Só pra sentir um pouco do gosto amargo: + +* Decreto 9.756/2019: "portal único gov.br": portais do governo federal devem + se movidos para um portal único; controle mais centralizado e apagão de + informações não-migradas. + +* Alteração do Decreto nº 8.777/2016 (Política de Dados Abertos): para dispor + sobre a gestão e os direitos de uso de dados abertos através do Decreto + 9903/2019, onde é explicitado que as bases de dados estão cobertas pela Lei + 9610/1998 (Direito Autoral). Esta mudança é um sinal de alerta à + possibilidade de privatização de bases de dados governamentais – o que já + seria fato gravíssimo – e consequente restrição de acesso aos mesmos. + +# Marcos Brasileiros - 2019 + +* Governo tentou colocar servidores comissionados para impor sigilo + ultrassecreto a dados públicos pelo Decreto 9.690/2019, mas voltou atrás + desta decisão no Decreto 9716/2019. + +* Edição do Decreto 10.046/20191: introduz conceito de confidencialidade como + atributo da informação: “propriedade que impede que a informação fique + disponível ou possa ser revelada à pessoa natural, sistema, órgão ou entidade + não autorizado e não credenciado”. Contradiz LGPD e outros marcos. + +# Resumo: estratégias do apagão + +* Retirada de conteúdos. +* Declarações de sigilo de dados. +* Alegação de que a divulgação fere direitos autorais. +* Perseguição de cientistas, jornalistas... +* Sucateamento dos órgãos de produção e gestão de dados. +* Deixar de atualizar conjuntos de dados. +* Desmerecimento dos dados e seus produtores. + +# O que é salvaguarda de dados? + +# Por que é importante? + +1. Não há garantia de que qualquer dado disponível na internet assim permaneça indefinidamente. +2. Os repositórios de dados tem sustentabilidade variada. +3. Cortes de custos ou critérios político-ideológicos podem causar a retirada de dados da internet. +4. Outras falhas podem comprometer a disponibilidade de dados. + +# O que possibilita? + +* Acesso aos dados mesmo que a fonte esteja indisponível. +* Redundância: cópias adicionais aumentam a tolerância à falhas. +* Integridade: cópias adicionais ajudam a detectar inconsistências e modificações nas informações. +* Valor histórico: cópias feitas em dadas diversas possibilitam de análises temporais. +* Análises robustas: grandes massas de dados são mais fáceis de serem analisadas se estiverem disponíveis na instituição. + +# Exemplos de análises + +* Fiscalização direta da produção oficial do governo acessível publicamente na rede. +* Levantamento do "diagrama de rede" da estrutura do governo: onde estão os + dados, se estão em datacenters públicos ou sendo migrados para a iniciativa + privada. + +# Como ajudar? + +* Iniciativas pessoas, simples ou sofisticadas. +* Iniciativas coletivas, institucionais ou não. +* Por uma Rede de Salvaguarda de Dados. + +<!-- +# Web? + +* É dinâmica. +* Historicidade, genealogia: capacidade + +# Inventário + +* São quantos sites do governo? +* Qual o tamanho? +--> diff --git a/2019/salve-quem-puder/reveal.js b/2019/salve-quem-puder/reveal.js new file mode 120000 index 0000000..fc7767a --- /dev/null +++ b/2019/salve-quem-puder/reveal.js @@ -0,0 +1 @@ +../../vendor/reveal.js
\ No newline at end of file |