PageSourceSearch

https://domenicovistocco.it/

html domenicovistocco.it collected 2026-10-08 06:18:17 UTC 24,992 bytes, 620 lines download raw bytes

1<!DOCTYPE html>
2<html xmlns="http://www.w3.org/1999/xhtml" lang="it" xml:lang="it"><head>
3
4<meta charset="utf-8">
5<meta name="generator" content="quarto-1.8.24">
6
7<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
8
9
10<title>Domenico Vistocco</title>
11<style>
12code{white-space: pre-wrap;}
13span.smallcaps{font-variant: small-caps;}
14div.columns{display: flex; gap: min(4vw, 1.5em);}
15div.column{flex: auto; overflow-x: auto;}
16div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
17ul.task-list{list-style: none;}
18ul.task-list li input[type="checkbox"] {
19  width: 0.8em;
20  margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */ 
21  vertical-align: middle;
22}
23</style>
24
25
26<script src="site_libs/quarto-nav/quarto-nav.js"></script>
vendor: 1 bytes, line 26
26
27<script src="site_libs/quarto-nav/headroom.min.js"></script>
vendor: 1 bytes, line 27
27
28<script src="site_libs/clipboard/clipboard.min.js"></script>
vendor: 1 bytes, line 28
28
29<script src="site_libs/quarto-search/autocomplete.umd.js"></script>
vendor: 1 bytes, line 29
29
30<script src="site_libs/quarto-search/fuse.min.js"></script>
vendor: 1 bytes, line 30
30
31<script src="site_libs/quarto-search/quarto-search.js"></script>
31
32<meta name="quarto:offset" content="./">
33<script src="site_libs/quarto-html/quarto.js" type="module"></script>
vendor: 1 bytes, line 33
33
34<script src="site_libs/quarto-html/tabsets/tabsets.js" type="module"></script>
vendor: 1 bytes, line 34
34
35<script src="site_libs/quarto-html/axe/axe-check.js" type="module"></script>
vendor: 1 bytes, line 35
35
36<script src="site_libs/quarto-html/popper.min.js"></script>
vendor: 1 bytes, line 36
36
37<script src="site_libs/quarto-html/tippy.umd.min.js"></script>
37
38<link href="site_libs/quarto-html/tippy.css" rel="stylesheet">
39<link href="site_libs/quarto-html/quarto-syntax-highlighting-88515d7ca1ed1ec5b678d464e969a30a.css" rel="stylesheet" id="quarto-text-highlighting-styles">
40<script src="site_libs/bootstrap/bootstrap.min.js"></script>
40
41<link href="site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
42<link href="site_libs/bootstrap/bootstrap-9bf9c761acdf326215161d5af636d246.min.css" rel="stylesheet" append-hash="true" id="quarto-bootstrap" data-mode="light">
43<link href="site_libs/quarto-contrib/fontawesome6-0.1.0/all.css" rel="stylesheet">
44<link href="site_libs/quarto-contrib/fontawesome6-0.1.0/latex-fontsize.css" rel="stylesheet">
45<link href="site_libs/quarto-contrib/academicons-1.9.2/all.css" rel="stylesheet">
46<link href="site_libs/quarto-contrib/academicons-1.9.2/size.css" rel="stylesheet">
47<script id="quarto-search-options" type="application/json">{
48  "location": "navbar",
49  "copy-button": false,
50  "collapse-after": 3,
51  "panel-placement": "end",
52  "type": "overlay",
53  "limit": 50,
54  "keyboard-shortcut": [
55    "f",
56    "/",
57    "s"
58  ],
59  "show-item-context": false,
60  "language": {
61    "search-no-results-text": "Nessun risultato",
62    "search-matching-documents-text": "documenti trovati",
63    "search-copy-link-title": "Copiare il link nella ricerca",
64    "search-hide-matches-text": "Nascondere i risultati aggiuntivi",
65    "search-more-match-text": "ci sono altri risultati in questo documento",
66    "search-more-matches-text": "ulteriori risultati in questo documento",
67    "search-clear-button-title": "Pulire",
68    "search-text-placeholder": "",
69    "search-detached-cancel-button-title": "Cancellare",
70    "search-submit-button-title": "Inviare",
71    "search-label": "Ricerca"
72  }
73}</script>
73
74<link href="https://fonts.googleapis.com/css?family=Fira+Sans|Merriweather" rel="stylesheet">
75<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/hack-font@3/build/web/hack-subset.css">
76<!-- Google tag (gtag.js) -->
vendor: 67 bytes, lines 76-77
76
77<script async="" src="https://www.googletagmanager.com/gtag/js?id=
77G-CCCBMBK051
vendor: 12 bytes, line 77
77"></script>
78<script>
79  
vendor: 134 bytes, lines 79-83
79window.dataLayer = window.dataLayer || [];
80  function gtag(){dataLayer.push(arguments);}
81  gtag('js', new Date());
82
83  gtag('config', '
83G-CCCBMBK051
vendor: 4 bytes, line 83
83');
84</script>
vendor: 1 bytes, line 84
84
85<script type="text/javascript" src="https://d1bxh8uas1mnw7.cloudfront.net/assets/embed.js"></script>
85
86
87
88<meta property="og:title" content="Domenico Vistocco">
89<meta property="og:description" content="">
90<meta property="og:site_name" content="Domenico Vistocco">
91</head>
92
93<body class="nav-fixed fullcontent quarto-light">
94
95<div id="quarto-search-results"></div>
96  <header id="quarto-header" class="headroom fixed-top">
97    <nav class="navbar navbar-expand-lg " data-bs-theme="dark">
98      <div class="navbar-container container-fluid">
99      <div class="navbar-brand-container mx-auto">
100    <a href="./index.html" class="navbar-brand navbar-brand-logo">
101    </a>
102    <a class="navbar-brand" href="./index.html">
103    <span class="navbar-title">Domenico Vistocco</span>
104    </a>
105  </div>
106            <div id="quarto-search" class="" title="Ricerca"></div>
107          <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" role="menu" aria-expanded="false" aria-label="Attiva/disattiva la navigazione" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
108  <span class="navbar-toggler-icon"></span>
109</button>
110          <div class="collapse navbar-collapse" id="navbarCollapse">
111            <ul class="navbar-nav navbar-nav-scroll me-auto">
112  <li class="nav-item">
113    <a class="nav-link" href="./language-it/dv_blog/index.html"> 
114<span class="menu-text">DV blog</span></a>
115  </li>  
116  <li class="nav-item">
117    <a class="nav-link" href="./language-it/publications/index.html"> 
118<span class="menu-text">Pubblicazioni</span></a>
119  </li>  
120  <li class="nav-item">
121    <a class="nav-link" href="./language-it/software/index.html"> 
122<span class="menu-text">Software</span></a>
123  </li>  
124  <li class="nav-item">
125    <a class="nav-link" href="./language-it/seminars/index.html"> 
126<span class="menu-text">Seminari</span></a>
127  </li>  
128  <li class="nav-item">
129    <a class="nav-link" href="./language-it/teaching/index.html"> 
130<span class="menu-text">Didattica</span></a>
131  </li>  
132  <li class="nav-item">
133    <a class="nav-link" href="./language-it/students/index.html"> 
134<span class="menu-text">Studenti</span></a>
135  </li>  
136  <li class="nav-item">
137    <a class="nav-link" href="./language-it/about/index.html"> 
138<span class="menu-text">Chi sono</span></a>
139  </li>  
140</ul>
141            <ul class="navbar-nav navbar-nav-scroll ms-auto">
142  <li class="nav-item">
143    <a class="nav-link" href="././en"> 
144<span class="menu-text"><img src="./img/flag-gb.png" class="img-fluid"></span></a>
145  </li>  
146</ul>
147          </div> <!-- /navcollapse -->
148            <div class="quarto-navbar-tools">
149</div>
150      </div> <!-- /container-fluid -->
151    </nav>
152</header>
153<!-- content -->
154<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar">
155<!-- sidebar -->
156<!-- margin-sidebar -->
157    
158<!-- main -->
159<div class="quarto-about-trestles">
160  <div class="about-entity">
161    <img src="img/dv-logo-avatar.jpg" class="about-image
162  rounded " style="width: 20em;">
163<header id="title-block-header" class="quarto-title-block"></header>
164    <div class="about-links">
165  <a href="https://scholar.google.com/citations?user=q2NHdmoAAAAJ&amp;hl=en" class="about-link" rel="" target="">
166     <span class="about-link-text"><i class="ai  ai-google-scholar"></i></span>
167  </a>
168  <a href="https://www.researchgate.net/profile/Domenico-Vistocco" class="about-link" rel="" target="">
169     <span class="about-link-text"><i class="fa-brands fa-researchgate" aria-hidden="true"></i></span>
170  </a>
171  <a href="https://it.linkedin.com/in/domenicovistocco" class="about-link" rel="" target="">
172     <span class="about-link-text"><i class="fa-brands fa-linkedin-in" aria-hidden="true"></i></span>
173  </a>
174  <a href="https://github.com/domenicovistocco" class="about-link" rel="" target="">
175     <span class="about-link-text"><i class="fa-brands fa-github" aria-hidden="true"></i></span>
176  </a>
177  <a href="http://pkg.robjhyndman.com/CV/RobHyndmanCV.pdf" class="about-link" rel="" target="">
178     <span class="about-link-text"><i class="ai  ai-cv"></i></span>
179  </a>
180  <a href="mailto:[email protected]" class="about-link" rel="" target="">
181     <span class="about-link-text"><i class="fa-solid fa-envelope" aria-hidden="true"></i></span>
182  </a>
183</div>
184  </div>
185  <div class="about-contents"><main class="content" id="quarto-document-content">
186<section id="domenico-vistocco" class="level1 about-link-text">
187<h1><strong>Domenico&nbsp;Vistocco</strong></h1>
188<a href="https://www.docenti.unina.it/domenico.vistocco"><i class="fa-solid fa-building-columns" aria-hidden="true"></i></a> Professore Associato in Statistica<br> <a href="http://www.scienzepolitiche.unina.it">Dipartimento di Scienze Politiche</a><br> <a href="https://www.unina.it/en_GB/home">Università di Napoli Federico II</a>, Italy.
189<hr>
190<p><a href="https://www.unisob.na.it/universita/areadocenti/docente.htm?vr=1&amp;id=747"><i class="fa-solid fa-building-columns" aria-hidden="true"></i></a> Professore a contratto in Statistica<br> <a href="https://www.unisob.na.it/universita/facolta/giurisprudenza/index.htm?vr=1&amp;lg=en">Dipartimento di Giurisprudenza</a><br> <a href="https://www.unisob.na.it/?vr=1&amp;lg=en">Università “Suor Orsola Benincasa” di Napoli</a>, Italy.</p>
191</section>
192
193
194</main></div>
195</div>
196 <!-- /main -->
197<script id="quarto-html-after-body" type="application/javascript">
198  window.document.addEventListener("DOMContentLoaded", function (event) {
199    const isCodeAnnotation = (el) => {
200      for (const clz of el.classList) {
201        if (clz.startsWith('code-annotation-')) {                     
202          return true;
203        }
204      }
205      return false;
206    }
207    const onCopySuccess = function(e) {
208      // button target
209      const button = e.trigger;
210      // don't keep focus
211      button.blur();
212      // flash "checked"
213      button.classList.add('code-copy-button-checked');
214      var currentTitle = button.getAttribute("title");
215      button.setAttribute("title", "Copiato!");
216      let tooltip;
217      if (window.bootstrap) {
218        button.setAttribute("data-bs-toggle", "tooltip");
219        button.setAttribute("data-bs-placement", "left");
220        button.setAttribute("data-bs-title", "Copiato!");
221        tooltip = new bootstrap.Tooltip(button, 
222          { trigger: "manual", 
223            customClass: "code-copy-button-tooltip",
224            offset: [0, -8]});
225        tooltip.show();    
226      }
227      setTimeout(function() {
228        if (tooltip) {
229          tooltip.hide();
230          button.removeAttribute("data-bs-title");
231          button.removeAttribute("data-bs-toggle");
232          button.removeAttribute("data-bs-placement");
233        }
234        button.setAttribute("title", currentTitle);
235        button.classList.remove('code-copy-button-checked');
236      }, 1000);
237      // clear code selection
238      e.clearSelection();
239    }
240    const getTextToCopy = function(trigger) {
241      const outerScaffold = trigger.parentElement.cloneNode(true);
242      const codeEl = outerScaffold.querySelector('code');
243      for (const childEl of codeEl.children) {
244        if (isCodeAnnotation(childEl)) {
245          childEl.remove();
246        }
247      }
248      return codeEl.innerText;
249    }
250    const clipboard = new window.ClipboardJS('.code-copy-button:not([data-in-quarto-modal])', {
251      text: getTextToCopy
252    });
253    clipboard.on('success', onCopySuccess);
254    if (window.document.getElementById('quarto-embedded-source-code-modal')) {
255      const clipboardModal = new window.ClipboardJS('.code-copy-button[data-in-quarto-modal]', {
256        text: getTextToCopy,
257        container: window.document.getElementById('quarto-embedded-source-code-modal')
258      });
259      clipboardModal.on('success', onCopySuccess);
260    }
261      var localhostRegex = new RegExp(/^(?:http|https):\/\/localhost\:?[0-9]*\//);
262      var mailtoRegex = new RegExp(/^mailto:/);
263        var filterRegex = new RegExp("https:\/\/domenicovistocco\.it");
264      var isInternal = (href) => {
265          return filterRegex.test(href) || localhostRegex.test(href) || mailtoRegex.test(href);
266      }
267      // Inspect non-navigation links and adorn them if external
268     var links = window.document.querySelectorAll('a[href]:not(.nav-link):not(.navbar-brand):not(.toc-action):not(.sidebar-link):not(.sidebar-item-toggle):not(.pagination-link):not(.no-external):not([aria-hidden]):not(.dropdown-item):not(.quarto-navigation-tool):not(.about-link)');
269      for (var i=0; i<links.length; i++) {
270        const link = links[i];
271        if (!isInternal(link.href)) {
272          // undo the damage that might have been done by quarto-nav.js in the case of
273          // links that we want to consider external
274          if (link.dataset.originalHref !== undefined) {
275            link.href = link.dataset.originalHref;
276          }
277        }
278      }
279    function tippyHover(el, contentFn, onTriggerFn, onUntriggerFn) {
280      const config = {
281        allowHTML: true,
282        maxWidth: 500,
283        delay: 100,
284        arrow: false,
285        appendTo: function(el) {
286            return el.parentElement;
287        },
288        interactive: true,
289        interactiveBorder: 10,
290        theme: 'quarto',
291        placement: 'bottom-start',
292      };
293      if (contentFn) {
294        config.content = contentFn;
295      }
296      if (onTriggerFn) {
297        config.onTrigger = onTriggerFn;
298      }
299      if (onUntriggerFn) {
300        config.onUntrigger = onUntriggerFn;
301      }
302      window.tippy(el, config); 
303    }
304    const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
305    for (var i=0; i<noterefs.length; i++) {
306      const ref = noterefs[i];
307      tippyHover(ref, function() {
308        // use id or data attribute instead here
309        let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
310        try { href = new URL(href).hash; } catch {}
311        const id = href.replace(/^#\/?/, "");
312        const note = window.document.getElementById(id);
313        if (note) {
314          return note.innerHTML;
315        } else {
316          return "";
317        }
318      });
319    }
320    const xrefs = window.document.querySelectorAll('a.quarto-xref');
321    const processXRef = (id, note) => {
322      // Strip column container classes
323      const stripColumnClz = (el) => {
324        el.classList.remove("page-full", "page-columns");
325        if (el.children) {
326          for (const child of el.children) {
327            stripColumnClz(child);
328          }
329        }
330      }
331      stripColumnClz(note)
332      if (id === null || id.startsWith('sec-')) {
333        // Special case sections, only their first couple elements
334        const container = document.createElement("div");
335        if (note.children && note.children.length > 2) {
336          container.appendChild(note.children[0].cloneNode(true));
337          for (let i = 1; i < note.children.length; i++) {
338            const child = note.children[i];
339            if (child.tagName === "P" && child.innerText === "") {
340              continue;
341            } else {
342              container.appendChild(child.cloneNode(true));
343              break;
344            }
345          }
346          if (window.Quarto?.typesetMath) {
347            window.Quarto.typesetMath(container);
348          }
349          return container.innerHTML
350        } else {
351          if (window.Quarto?.typesetMath) {
352            window.Quarto.typesetMath(note);
353          }
354          return note.innerHTML;
355        }
356      } else {
357        // Remove any anchor links if they are present
358        const anchorLink = note.querySelector('a.anchorjs-link');
359        if (anchorLink) {
360          anchorLink.remove();
361        }
362        if (window.Quarto?.typesetMath) {
363          window.Quarto.typesetMath(note);
364        }
365        if (note.classList.contains("callout")) {
366          return note.outerHTML;
367        } else {
368          return note.innerHTML;
369        }
370      }
371    }
372    for (var i=0; i<xrefs.length; i++) {
373      const xref = xrefs[i];
374      tippyHover(xref, undefined, function(instance) {
375        instance.disable();
376        let url = xref.getAttribute('href');
377        let hash = undefined; 
378        if (url.startsWith('#')) {
379          hash = url;
380        } else {
381          try { hash = new URL(url).hash; } catch {}
382        }
383        if (hash) {
384          const id = hash.replace(/^#\/?/, "");
385          const note = window.document.getElementById(id);
386          if (note !== null) {
387            try {
388              const html = processXRef(id, note.cloneNode(true));
389              instance.setContent(html);
390            } finally {
391              instance.enable();
392              instance.show();
393            }
394          } else {
395            // See if we can fetch this
396            fetch(url.split('#')[0])
397            .then(res => res.text())
398            .then(html => {
399              const parser = new DOMParser();
400              const htmlDoc = parser.parseFromString(html, "text/html");
401              const note = htmlDoc.getElementById(id);
402              if (note !== null) {
403                const html = processXRef(id, note);
404                instance.setContent(html);
405              } 
406            }).finally(() => {
407              instance.enable();
408              instance.show();
409            });
410          }
411        } else {
412          // See if we can fetch a full url (with no hash to target)
413          // This is a special case and we should probably do some content thinning / targeting
414          fetch(url)
415          .then(res => res.text())
416          .then(html => {
417            const parser = new DOMParser();
418            const htmlDoc = parser.parseFromString(html, "text/html");
419            const note = htmlDoc.querySelector('main.content');
420            if (note !== null) {
421              // This should only happen for chapter cross references
422              // (since there is no id in the URL)
423              // remove the first header
424              if (note.children.length > 0 && note.children[0].tagName === "HEADER") {
425                note.children[0].remove();
426              }
427              const html = processXRef(null, note);
428              instance.setContent(html);
429            } 
430          }).finally(() => {
431            instance.enable();
432            instance.show();
433          });
434        }
435      }, function(instance) {
436      });
437    }
438        let selectedAnnoteEl;
439        const selectorForAnnotation = ( cell, annotation) => {
440          let cellAttr = 'data-code-cell="' + cell + '"';
441          let lineAttr = 'data-code-annotation="' +  annotation + '"';
442          const selector = 'span[' + cellAttr + '][' + lineAttr + ']';
443          return selector;
444        }
445        const selectCodeLines = (annoteEl) => {
446          const doc = window.document;
447          const targetCell = annoteEl.getAttribute("data-target-cell");
448          const targetAnnotation = annoteEl.getAttribute("data-target-annotation");
449          const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation));
450          const lines = annoteSpan.getAttribute("data-code-lines").split(",");
451          const lineIds = lines.map((line) => {
452            return targetCell + "-" + line;
453          })
454          let top = null;
455          let height = null;
456          let parent = null;
457          if (lineIds.length > 0) {
458              //compute the position of the single el (top and bottom and make a div)
459              const el = window.document.getElementById(lineIds[0]);
460              top = el.offsetTop;
461              height = el.offsetHeight;
462              parent = el.parentElement.parentElement;
463            if (lineIds.length > 1) {
464              const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]);
465              const bottom = lastEl.offsetTop + lastEl.offsetHeight;
466              height = bottom - top;
467            }
468            if (top !== null && height !== null && parent !== null) {
469              // cook up a div (if necessary) and position it 
470              let div = window.document.getElementById("code-annotation-line-highlight");
471              if (div === null) {
472                div = window.document.createElement("div");
473                div.setAttribute("id", "code-annotation-line-highlight");
474                div.style.position = 'absolute';
475                parent.appendChild(div);
476              }
477              div.style.top = top - 2 + "px";
478              div.style.height = height + 4 + "px";
479              div.style.left = 0;
480              let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter");
481              if (gutterDiv === null) {
482                gutterDiv = window.document.createElement("div");
483                gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter");
484                gutterDiv.style.position = 'absolute';
485                const codeCell = window.document.getElementById(targetCell);
486                const gutter = codeCell.querySelector('.code-annotation-gutter');
487                gutter.appendChild(gutterDiv);
488              }
489              gutterDiv.style.top = top - 2 + "px";
490              gutterDiv.style.height = height + 4 + "px";
491            }
492            selectedAnnoteEl = annoteEl;
493          }
494        };
495        const unselectCodeLines = () => {
496          const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"];
497          elementsIds.forEach((elId) => {
498            const div = window.document.getElementById(elId);
499            if (div) {
500              div.remove();
501            }
502          });
503          selectedAnnoteEl = undefined;
504        };
505          // Handle positioning of the toggle
506      window.addEventListener(
507        "resize",
508        throttle(() => {
509          elRect = undefined;
510          if (selectedAnnoteEl) {
511            selectCodeLines(selectedAnnoteEl);
512          }
513        }, 10)
514      );
515      function throttle(fn, ms) {
516      let throttle = false;
517      let timer;
518        return (...args) => {
519          if(!throttle) { // first call gets through
520              fn.apply(this, args);
521              throttle = true;
522          } else { // all the others get throttled
523              if(timer) clearTimeout(timer); // cancel #2
524              timer = setTimeout(() => {
525                fn.apply(this, args);
526                timer = throttle = false;
527              }, ms);
528          }
529        };
530      }
531        // Attach click handler to the DT
532        const annoteDls = window.document.querySelectorAll('dt[data-target-cell]');
533        for (const annoteDlNode of annoteDls) {
534          annoteDlNode.addEventListener('click', (event) => {
535            const clickedEl = event.target;
536            if (clickedEl !== selectedAnnoteEl) {
537              unselectCodeLines();
538              const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active');
539              if (activeEl) {
540                activeEl.classList.remove('code-annotation-active');
541              }
542              selectCodeLines(clickedEl);
543              clickedEl.classList.add('code-annotation-active');
544            } else {
545              // Unselect the line
546              unselectCodeLines();
547              clickedEl.classList.remove('code-annotation-active');
548            }
549          });
550        }
551    const findCites = (el) => {
552      const parentEl = el.parentElement;
553      if (parentEl) {
554        const cites = parentEl.dataset.cites;
555        if (cites) {
556          return {
557            el,
558            cites: cites.split(' ')
559          };
560        } else {
561          return findCites(el.parentElement)
562        }
563      } else {
564        return undefined;
565      }
566    };
567    var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
568    for (var i=0; i<bibliorefs.length; i++) {
569      const ref = bibliorefs[i];
570      const citeInfo = findCites(ref);
571      if (citeInfo) {
572        tippyHover(citeInfo.el, function() {
573          var popup = window.document.createElement('div');
574          citeInfo.cites.forEach(function(cite) {
575            var citeDiv = window.document.createElement('div');
576            citeDiv.classList.add('hanging-indent');
577            citeDiv.classList.add('csl-entry');
578            var biblioDiv = window.document.getElementById('ref-' + cite);
579            if (biblioDiv) {
580              citeDiv.innerHTML = biblioDiv.innerHTML;
581            }
582            popup.appendChild(citeDiv);
583          });
584          return popup.innerHTML;
585        });
586      }
587    }
588  });
589  </script>
589
590</div> <!-- /content -->
591<footer class="footer">
592  <div class="nav-footer">
593    <div class="nav-footer-left">
594<p>© 2011-2025, <a rel="me" href="https://domenicovistocco.it">Domenico Vistocco</a></p>
595</div>   
596    <div class="nav-footer-center">
597      &nbsp;
598    </div>
599    <div class="nav-footer-right">
600      <ul class="footer-items list-unstyled">
601    <li class="nav-item">
602    <a class="nav-link" href="./subscribe.html">
603<p>Subscribe</p>
604</a>
605  </li>  
606    <li class="nav-item compact">
607    <a class="nav-link" href="https://domenicovistocco/index.xml">
608      <i class="bi bi-rss" role="img">
609</i> 
610    </a>
611  </li>  
612</ul>
613    </div>
614  </div>
615</footer>
616
617
618
619
620</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.