Sign inSign up

dockersamples/labspace-ai-fundamentals:latest

Manifest digest

sha256:d1ce62cc938bb6ca3203a3fa0080f8a81d4e2364035286e549ac621a3c444300

Last pushed

4 months by dockersamplesbuildbot

Type

Compose

Manifest digest

sha256:d1ce62cc938bb6ca3203a3fa0080f8a81d4e2364035286e549ac621a3c444300

Compose file content

##################################################################################################
# This Compose file is intended to run a Labspace. It can be run with the following:
#
# CONTENT_REPO_URL=https://github.com/username/labspace-content-repo docker compose -f compose.run.yaml up
##################################################################################################

services:
  configurator:
    image: dockersamples/labspace-configurator:v0.26.0
    use_api_socket: true
    volumes:
      - labspace-content:/project
      - labspace-instructions:/instructions
      - docker-creds:/docker-creds
      - labspace-support:/etc/labspace-support

  interface:
    image: dockersamples/labspace-interface:v0.26.0
    ports:
      - "3030:3030"
    volumes:
      - labspace-instructions:/labspace/instructions:ro
      - type: volume
        source: labspace-support
        target: /etc/labspace-support/private-key
        volume:
          subpath: private-key
      - type: volume
        source: labspace-support
        target: /etc/labspace-support/socket
        volume:
          subpath: socket
      - type: volume
        source: labspace-support
        target: /etc/labspace-support/metadata
        volume:
          subpath: metadata
    depends_on:
      workspace:
        condition: service_started
      configurator:
        condition: service_completed_successfully
    restart: unless-stopped

  workspace:
    image: dockersamples/labspace-workspace-node:v0.26.0
    depends_on:
      configurator:
        condition: service_completed_successfully
      socket-proxy:
        condition: service_started
    ports:
      - 8085:8085 # For the IDE itself
      - 3000:3000 # For the Node application running in the IDE
    volumes:
      - socket-proxy:/var/run
      - labspace-content:/home/coder/project
      - docker-creds:/docker-creds
      - type: volume
        source: labspace-support
        target: /etc/labspace-support/public-key
        volume:
          subpath: public-key
      - type: volume
        source: labspace-support
        target: /etc/labspace-support/socket
        volume:
          subpath: socket


  host-republisher:
    image: dockersamples/labspace-host-port-republisher:v0.26.0
    pull_policy: always
    restart: always
    volumes:
      - socket-proxy:/var/run
    network_mode: service:workspace
    environment:
      LABEL_FILTER: labspace-resource=true
    depends_on:
      - workspace
      - socket-proxy

  workspace-cleaner:
    image: dockersamples/labspace-cleaner:v0.26.0
    pull_policy: always
    volumes:
      - socket-proxy:/var/run
    environment:
      LABEL_FILTER: labspace-resource=true
    depends_on:
      - socket-proxy

  socket-proxy:
    image: mikesir87/docker-socket-proxy:v1.3.1
    volumes:
      - socket-proxy:/tmp/proxy
      - /var/run/docker.sock:/var/run/docker.sock
    configs:
      - source: docker-proxy-config-labels
        target: /etc/docker-socket-proxy/config.d/add-and-require-labels.yaml
      - source: docker-proxy-mount-remap
        target: /etc/docker-socket-proxy/config.d/mount-path-remap.yaml
      - source: docker-proxy-mount-allowlist
        target: /etc/docker-socket-proxy/config.d/mount-path-allowlist.yaml
      - source: docker-proxy-forward-proxied-socket
        target: /etc/docker-socket-proxy/config.d/forward-proxied-socket.yaml
      - source: docker-proxy-add-to-labspace-network
        target: /etc/docker-socket-proxy/config.d/add-to-labspace-network.yaml
    environment:
      DEBUG_LOGS: "true"
      LISTEN_SOCKET_PATH: /tmp/proxy/docker.sock

volumes:
  socket-proxy:
    name: labspace-socket-proxy
  labspace-content:
    name: labspace-content
  labspace-instructions:
  docker-creds:
  labspace-support:

networks:
  default:
    name: labspace

configs:
  docker-proxy-config-labels:
    content: |
      mutators:
        # Add labels to all newly created objects
        - type: addLabels
          labels:
            labspace-resource: "true"
      responseFilters:
        # Only return objects with the labels we mutated on
        - type: labelFilter
          objectsToFilter:
            - containers
            - volumes
            - networks
          requiredLabels:
            labspace-resource: "true"
  docker-proxy-mount-remap:
    content: |
      # Remap the project directory to the labspace content volume, since the project
      # is running out of a volume.
      mutators:
        - type: mountPath
          from: /home/coder/project
          to: labspace-content
  docker-proxy-mount-allowlist:
    content: |
      gates:
        - type: mountSource
          allowedSources:
            - labspace-content
            - labspace-socket-proxy
            - buildx_buildkit_default_state
            - label:labspace-resource=true
  docker-proxy-forward-proxied-socket:
    content: |
      # If requests to use the Docker Socket are used (such as Testcontainers),
      # use the proxied one to ensure permissions, remappings, etc. are applied
      mutators:
        - type: mountPath
          from: /var/run/docker.sock
          to: labspace-socket-proxy/docker.sock
  docker-proxy-add-to-labspace-network:
    content: |
      mutators:
        - type: addToNetwork
          networks:
            - labspace
services:
  configurator:
    environment:
      PROJECT_CLONE_URL: https://github.com/dockersamples/labspace-ai-fundamentals

  workspace:
    image: dockersamples/labspace-workspace-node
    environment:
      OPENAI_BASE_URL: http://model-runner.docker.internal/engines/v1
      OPENAI_API_KEY: not-required
      OPENAI_MODEL: ai/llama3.2:3B-Q4_K_M

  visual-chatbot:
    image: mikesir87/visual-chatbot
    use_api_socket: true
    ports:
      - 3050:3000
    models:
      llama3:
        endpoint_var: OPENAI_BASE_URL
        model_var: OPENAI_MODEL

models:
  llama3:
    model: ai/llama3.2:3B-Q4_K_M
configs:
  project_source_tar:
    content: |
      H4sIAAAAAAAAA+xb644bR3bWbz5FmTasGYbsGc5FSrgrL8a6ebK6jGdmLRiyYBabRbI0fduu7qFo
      aYB9gXWQXf8KAvhPgCDBAvkbIG/jF4gfId85VdXd5HAkOSt7sVhzF/Kw2V116ly+c+1IjkwmQ7V1
      7cf7bONzc3+f/tu/ud9v/td/rvX3d7b7/Rs3b+5sX9vu7+zs3rwm9n9EmqpPaQqZC3EtL5NE5Vff
      96bf/0o/kZf/9m4vy9M4K3oqmepEqVwn0yAev4M9SMA39vaukH9/d6+/U8sff2/3b9zo710T2+9g
      7zd+/sbl/744YqmLu7XUW6333xfff/v1H8UDJfMEV0Q6eq7CQp8r02p9vBDFTAmVjEU6wZ/aCEM/
      pklXLNJSzHUUDVqtnvhNMlY52IsbZ+mcHzILU6hYWE0TZiYzZUScjlUkRmomz3Wa48FfJ7idH0lF
      aZSYqHnPzNJCqBcyziI8gh8KJcOZkP7phRirOE1MkUsiBat8rIQcRYruzdVvS2WwYZGXYVHmCqSX
      RVYWYuMfTx4/2hQTEOTXAum9HvPgu3/9/f/+9z+JJzNZCJzSUd2wj1+1WgeOAPwe6TNsKc5VvhCh
      zHjzME1AUVikuZjPUlxOxDgVMopTkCOTBdgH9n73u2/ECNSkSbQQesJsnILbxLNYhBHEIHRiqcfh
      TCA6naNL1HQ6RAWxOaMtdahIQGEuJwVtUsxS8LK5jGVNpEHpQkxVwc86xrAkZVIErdYprjK9OgZU
      FJMy8qzATdejSMxzXSi/d6ezJOROJxCHWFlFkf2d2TWAfJiteQomgTkZNCVNpNCkFWkZjUUhwU0W
      pL2xJLnj5xgWKyZpFKVz/9skzWMSUWE89W6NEZ0Xdx0kCyHHY02nlhELRb2gBwRYNza1xL//9t//
      U5wsKal6Adp0rJLCWFZ8pk2JRW5j5xF0MlLYlrgVzmQyVWvUnAzAKPuLmkxgKziXvU/GrCJQGcNq
      GxAVsEmZF6I/EEeOK2aui3DGptkPxONM2ccHhRw90MnZ02WSnr3U41vt0H5pi1muJrfas6LIBltb
      URrKCIpQDHa397fbF0xcroxibcRhtWFlaRJFxhVGOjyzWkQiPuYnYmWMnCoDxYP2FrhTWh3CvkUa
      4zA7gbhNT+KRg/GYjDn3T3U6XZIJ32/FieW7jln4B8IhK681piXwGQ6HWSQ1y48vPJktvOaZs4UY
      RaX6lb/TPvIoLZxUigWUjTYAqcqCl6LDZ7AFBWp3A9w8F6nnb6dzogpiB50QGlCKjSLNermezopN
      Xih0hztZUflWay8QJyoiWduV7udlnC1ECq2MZYL1vMYz9NA9X35a0mL+ejhLYa/5lwGg2eKY4zzO
      v1jipCF1StRcrBgeDsLiWyJUniumjzhz6lWQ0ZFuJeCdkkI7GBtr6GsO3cciZo4tCalgXHnRhUnn
      RlmBETAUGrcF4tQL7LoRZ1guUmMYxUya5HrhTGT8Cwt0dKAlOHI/g7qPxNP3Dh8ePT4+PXh0+gxf
      K1It2hKOssOgFUQuxxpqHTXpncuFgUuAKMfswJLLhknEQnXw//lsscZutQcsAE6W4vSEfJECY2hT
      mHwuZJaBsZdMd2cgTmpXoxNAUqv1kCgHZ0EeWBHpGKBJqrhka7BihibiMzZf8ElBTwhRs4U2XNhY
      FpKRB7+f6zFpMNDh0J7Uay7rbRcm1dDFh1ZvhCnjWOb6K5XX+hiIO9r8WfrWpScTSOtcLSPAJdDA
      2Sn6AoDDCGfWAAkm5NJ2DNcweY8+FVgI8t01LjwH+fz3U/6XPi9FW5bwe3l7INoHIEO1u6JdAM2x
      b5zR1e1/GPR36Krbja6xshVySntAhaKUIWYideSdNeCc/tzf3hYqz9PceAULZyo8gxOi8ChLgVNB
      W1x01xP0cTrCxmINQXsrBB2Sl2WHKEWUpmeBeIB/XcRB2975WMR6akMfGMGYNAwR6/9n893+yub3
      9AvYpHhYrZ9DJU0ZkkrCIqIFkM4xC1yaKRkVs8Vrdr5SDru7KzvfTpOJzmOoOvG8Yi0ZbJqTNyIL
      lsmZeQ+78WbPauhnAE6sf3FrNtDJRwi5gi0BIknJQm28TSy8d1jygwVcqfTwdHp4ZIGJIkNZAA0T
      JnM+AwCtQZOxmiBQI2QtpDmzbgg3rdN0Y02bVsPigINcxQroFqYxQlwCH6w5tqgpDg4JhQyDWXI2
      QHgZlrFFbBktjDZduxotI12YHkbSGD1xyAWDhUhN5L4QZXGak/HWYdHX/yXurUbhrdZJGiuWovX6
      FGIDd8muETWRmwY3ZB1LMqKmxPp57dir5Wo4JiyH0DudKvC3POQYd8DL6SSMyrHyD1uM3XLRXyY1
      LFInTdkLrI0oHBGCQrionOsH3LrcAKe9d2k3IgYCItyHWBOKWj/3Z3Ee0mQqJE76yNPGorjxlDli
      cxo2DJkz2o+VCXPNkSmpMaJPuyhFoqQAkFhB4nPRSpinQP6YoN9RCr5/AhW7bixzESdFNRho0uUK
      p2WeywW5BCwpbbqWLxhHG3S0nTYgRIYmp0ZTntcFPVNp/wL9iSqhI1HbZnjPKQRnKeoC+OuwF8FD
      L0yzRc/Ggi2CYRg+RfhkzNYaGHOwJUXgScFG7ncPsSr0Kcc5z7WamzeTE4hjDt7GyDmLWR1ULKs3
      c9ni0TJFZHqWnmWKrElbCyPJyVh+Baa9J54AdQw5SorhsRdZClgMqsaM/7AEj3uNbYgWyoILQrfG
      Nv5sP4AyJFKjPCU3MAHeiGIOMSLOgYtNyQoQ584luEyCBlCoxQ+gxvP3h1EzTlWthoZCLucHR+kL
      CqZtess2AnH9EGqsvr09MScznWW0GTggDAIETqhtMmwl+VukSLpYWEgNkY/iSXYcz1rsMBq+QTlE
      87juoMSDzbAie9iwNSiDDU04TQUO2GhFU0zH8EQMQfyYTOEfnfnZAN35GpfGEhCoS14mV6oufzAs
      lRzxqiQtpzOGXFA0irShoogjnMMpYgrhOfx2Tl4EwTriRayCoKuMCks58BRoaJSxcW0BJUuwBznN
      phv45//47ne///7bP/xPM751yAcmhWBfq0U51FJlgC7jhDhbSTuQ2hYqnCWa8GwgLqO8zQIvF2vg
      OH0UaCXFBQz24FzHCVby44mOFCfIw+0dV940WzoZqxfBczN89hJsmt1qr/kNiTE9W+VJFP7hO+Ux
      TP6kTFzOIiOKCeAHQjmB+ElyQCVJzj23kpl5BqSirCtibDRcwqJclOzIBsuE1ZKiPTxm0xeFwARs
      quLckYSIId2YNKuHVN8Rz7+HY1EfR3z4oUiymJMsrFnHRoizj8vE6Sd5GdNzrllx8j5ryIddCh/2
      LUlI6LCekcupOPk5F3hhpwFf64kDSvgLLrGsQjdZkXQOQWyUhqR/qRq4Wa9Tqwzpgytb+tAHVznZ
      jpViJUvSgoIYBIqncORQKHghr15DwhmXJw2JBcN67cesjXft7hubQ+hl0dA1JAlK7N18nXYJuufW
      3s2LTeu56rR1iTZbnIGg5JRiKScfi0Q+mHtX4iGwefT49C6hDYV11sBM07xgzYg0OaGlIEPmZ+N0
      bo1ejKIUOd7GL+nLR18M6X8cEwRBIOzXX27xb5s2CA8tFRzEIXRJp4igOB0EJtIJueqbIMXw8Vom
      c8MR/xNKLl38b7l3CSgQw0ac/58D8RH82qKPkQn87Veqho/rplH9+UtX4v8yn6r/4/8IFjKO3u0e
      r+//bPf3+/2V/t/ejZu7P/d/fooP8jdJ6SFhsR5z9nhG+S4D65bUPXi6sSRolhGhhUF0EKpjlaUD
      MYXxlaMAWenW8mNel3qXn3cR22e4mSBL3FC7f79HQUOhi0gNKJu913iCHcAdda6ilOpTrUbUNLDd
      Kedfc06eQ0VeD+EUlhnbp9irUCZt8ay7pouD/DdNI846qxL08cF9V4OzXnyGi6YHQFMvVE6FAusX
      AeTn1Ao713ma0FZw4q4ZZoilPeHO9URFIaHqh1SYKzPrqy0vjuAmBmK739NJUaX1QTxuPn4qozOX
      t9ky4poFdnqFvatXpD172pVV1rT6Li9zRR94iRpi123LrjUr7PWInz3Hz5VnjxUgXgGYxUE5JY4B
      te8rmJZ1+Btg/OaaNfd7uVxd6gncUW8tL2/0SBmi0jhOQib5uQ6VkwkpumuP8MNuveUuCv9S5tFA
      rG2d8M86JD2kpf5a3Ufd//ccfvd7vKn/v3Njtf+/u3+j/zP+/xSf9wnpBuI+UM42SlyXAuD2OSWC
      d+AbfoR5AGq4EMTi3kRRIZlKrvYHlfi2vy78LACtX3AKTGV5xRAveYFMZ4qC6QEFqgQs1JGywNIV
      U4srioYBSh1RY8EHjvSsq89yYmrbW6bqhBk/ElD3sBBVq2Yu/G/fcCQLtBxFKh74gHmcUvGdHrOp
      9Jg5+EAm05LKkHHVBaKqKyjn0lFWInMPBfU180QVtmLLwW2TgrAs0smEfrSl7EVjM+Ywiwx+JpPJ
      4rpxywHSshSrI4n0t7iSyHVTVYv90MTdc2p0W57MKNonAl21aaZ0bonmDjET45rrWa7PKc5OeW18
      Q1hB7UM+O2V9ISd9vmprE1zt6tx6TW+uGonwvfo5UhYqrXDPj5tnpm4Wu/GG0pCXJuXIfJtKcZHW
      z39w6QdnMuS1+eEoncNlU2/KuaXe1W6p00H4E51zbQgrjRZU3HHdRVd57OQqwipJ0YFmkmITMZUa
      +EoLeNAcyPBVKmpJNhXsj//CCtZU81aLvnEVomEOtgYbI+GTetya4ExwSXkhHhyzl/r06W+oyeBV
      +5no9T4Sx0/7gXfG6pej/KN7micBLPnwaWVyZug62wEfYdkUbKvlmBc7eLoTeH9Oz1ATz64AW6YL
      l+Rrnz7gp+8/3Q08s5kUxqDKJDnr94u4VufY64Wr3XU61IJSos964481gMTuQ9RJ1Wm5Xls49URl
      Hs7WnY3DzooXrH/2ONxebTRfWBF8KY6LW52OikeKq27U4tw4Vzz8k6uMpiycobFa0LKbToVj7AP7
      N9DrSOZUpbTEBeIe1xFpukiOumKuqKpG4HimFlTX9ocAZJ4pRakzN30nMGvjqtKzKjQOakbtMKOc
      yIhPh8lz3yD2SFrJEDiSrptrMWuGahp77PIeXrC0SV1i9dBseGrHZ+FW1rU5rUo7EHA21cgA9Wd4
      SITvJ6a4s7LANmzOvxDtwwZMtkWKm/I5IvjNrmueK8I8GFUUlaFOrICC5YpIp3O3KVXbFXSawdxJ
      gKI5DSEIK3AHoaHMqDBRSzhWMuEyxokVdZ21kP8sM1fRcD+6taCqKfebWJWcxElFuYUqyCeQX2vj
      35LnSwqejKs7gSNqm7aPTh+zup1LV11jt7BoE0gmvDE3rl9I6IFXrxTnjGQWUO7glb72naaaZLP1
      FpJBrf6uBq5JvtLwhEQNbt/8CZmQ8uU2XwAL4cit23NNHaII+7ETIdXPy8bkVO2sizlNu5G6ETvF
      pTrxWOfcsrEug+/hbao0z5bWqKUVl+GsQU/TGpxmxfKMq7VXlZr3KJJeU2Zevu5KzG4Aq1Ew1kVj
      PIdv8XWyumA6jFI5vuPka6gG6SvSVu9oQSOGQfGiGPIapp4zGnq9MFtDwSXrvF7Xn/bykoaS7Dpg
      YP/ntcRBZajqSuwZLtFE2NDC+BNwG8y+vKxrFISugbVUA3/L+je4WtW+mcevq3vf0whBu6xHuqhU
      jH2AHT8yTWWoNch7o07HPWNhgBTiLUh7fU2cGOAru74waTW22hY0fXLMulK3s5zyc5+N1N82ZIXS
      hHDcUqgiURgizZMai7vAIbeuHVSjho0XgFWRK4VGMUMWIWG0921tidPHdx4PeTSBx67wSGMkR55L
      W7DhK7j7pICT6ldlAFV72QqtrNPxWb0p6ltuVca4UXvxSiE3f2H31ROx4R8JbLtN3Lp1S2xvipfV
      RAqtnEYqiNLpRptmBC8TQviFpCj4Imljaf+gq4dXToXjUdZkndgGnivKx4uVoCJo21UuWq1VCoai
      YshYfPByhfoLy5INszkYOkqqO7DlXRnONjZAdVfoTXHroytOOaQLH7zU4u9E/yIQTz94iUcCLn1c
      PBMbbN4DYa/yl4tNv9uFZ60X4M7Ahw6N2NUi6koAkdaTmlaYHkRvVWeoqA1imdE56AzDEy40eoIs
      mV8k9psr9lwMN+tnn6c62bj+RfJFAh9D/7m+SvTuoIpFXJxBtMoq3LenWNI7F5XcEnIuYVk0GCp1
      QPWewNkLGyC1Tgu1UfPdTqyKh4/v3H1QT0H5VvGgMaFGn5dL31i8KdWjqpGJS787BgzEkHIryiWl
      mKkoo0GVqjeNiNzObNIxqwlPe/LHjx58vhQtjRRlQuLQdqLdsCdl52nhMxR3a3c5qPoh+i/upLwg
      OVCKdRpPBCSy2w5PSc5ut4vh0uEvum/HOTslcDXfPDuWF6++PVtWe2fzVa8onKVUTHy6/Szwk2Vu
      5QCKH284s2GI369brUinL3fyGpHPn+VGfKboHYZrsxL4j1Q9pcQjK2FYkhUAO3M5T6rgqA4Ragh0
      sl8TM1w1pYuYgM7nwmpStuXI2o/VNiZ/B/Cqbaesr9XPNpzuE+eyObAM7Rsfmqo9ta+OJQ2C2yFy
      U1csanVkpLI+361fe1bAWSRBBRboGV8VG/F8A1Cx6ZSX49mvxd0XWZTmVUjrOdZqvSZKbPB1JU6s
      fqFAkTneVJuVfJWTPe3yUd+isH1tFws3YmWO5jIJEy2jQtNAS7UXT1dJHsGlAd9GANngmW36sr5b
      fTJnjeVtssFBbGOA5V6aN/PmRgrRtUNvON8A9/WgCrfJ2/HcEL3Mo6YLGvr7xNbTQHikmz5a8gsV
      xvscJGBuzofHPwsyrB7NbEddaiHLaS6zmb9gK0CaJNyz9SWf8VL0aZEtl2PVQ4YFaVvqqkTQlfKI
      uJMqgXe5maY6VE2kLTECpjsu3eOCQcfneV1GRZ6qcxF1j3M4ShTdrsfwW8wU2u6A63GSYBbZN88w
      +sNngP8uj0zQ/TRaaieabPDuTjda1BG7f8kCAoSyUMY201OKH2HAUCIebLckfGbTTypkkc7xwY/K
      PEuN6o1KHdHIIu/Cg4jZ1KarXfFEyXPNcIOnj3SiQpp4AcOoRlBli/wwXWGhrNZBBCcgMvqb7dP/
      WJ+6/7O+ffgu9nhD/6e/v7+/+v7n7t7Oz/2fn+Lz/prW8rtv99AD1Fb1c6rsKA6ODu2suX8bxY/x
      NLs+jULMSBVzpWgSix3HsGuHtIYWx9fMZHIwaFYpARWNHgyuFoBCY7gMJKP65UB+z5BCJ3Jzq50E
      LPqQglj2hxMqKfBxQm5spNVbqTaYeYS/KV5rRAt/+BPHSut40mrxhJOLTmhuEALiAoDkYX9euUuJ
      /qXaGw2MVS+e+Cl6+xrPup3o1UwebaweoVdMDE81YF0aIm4Ot9oo2LjQwPO4ihmZLve2KM9j+KZL
      1HxVRZurB8Ypmm/zMjwarLeiSMZyN9gZ7H7c+3Tvy19/+ZBjev+KiGn7TOotxsxflyhV76q8xZzx
      uvcN7dsnz1oXthlx4DS+yh+rObflybMsWryBGS7RoHPaVKfxdozPfdbNUrcu033qCKaenkR+QIRD
      vUNJNVtup2ZQuxTxCmhxqnMsF5FCNECul+aJKR4JgnarkYm1EepoM/vSVnhZAEWa0S0XFT/otbiH
      SybZusvGVL2aQZ0EKCn9SK+Fka6uvDDMb0/Pc3qVk985eCWO6c3hV+IJrmvqZLIivrLjgVUDWbxq
      verxx/3Hf1a+4gKW9MiCZT5febsPlw4bryp2/etyXfticreCDV6HcQmPnDqg5Jd8XolPfZDcrd7l
      6NrRcNse5GcbOPaq0TB5JY5oDDYt626J+b/2vm65jStJc6/5FGW0egzSAEiQIiXTIStoiVKzTbVk
      UbbWbavFAlAEywKqylWAKFjNiN2LnYi92JvZuZqb3buZy3mGeZR5gn2EzS8zz6lTPxD1Q7Hb3VUR
      tiRUnf88efLkz5deG/IaS/FdvqG60UrZqtQHX5wlI3qsDuCyh+HUQ1eH4VwYRJt9xo2Ni+4WR8Ll
      veuo2L35/K/SzQec0OqCSk41dRHUIQdFoXleeRtQnYnLO19N2V2aI1OZH7uRwZ51p4aHFVG2P3zB
      3FwDNViozT2vnV6WdfgfHk7dq+h0fXYPElP8iW/sDj7Cwfw5ZOaiSU29yV+GfAE18dS0pfLoKL6P
      G0o1+ocLQ61niyQohk92CoHB1TKiq3i/uOutvDMchGcPElo4XjSN/pwPpqExOpowLFSiNxz6Vjw5
      1EpAV5KATfe5LsYovyusVbmK8DkiiTG7uKhTnw+OIZruGrGBDzrif4OFQynXzZDUpmoLOl7E3mA+
      UMgJc1Enruaf8ZYwH+HYLSn9j1VtlbNwXLqDicorEpE9giGUidtQvxWc6Mceq5o4ejZiE6d9LRHG
      szCaWwOpZRLLVndPIuTwfw7vY7cciBx6eviOy/owpr1firn/Spy21TeD77eySErQ0AylpehKE6BH
      VGXIX6Og6eIYjjmOprBbOq745dJuZ+kCCc2LcMm+R2d5bCjtAVoSicWhpfTToMBrsISzmJbilMOl
      yxIhzf9ONeI0c0NOVX0ERZvGCRm/JonNK2Iu6NEczgzVK1TCHKoJmao6FZz6b7HyYm0tou0WTGMb
      zxqy9oa6b+PLfV4Gsf1MFrk83PP2C64zLA4b/x3bkboFLIbVm3NRDTFTFiSyXZIKo3GQFk8s1gTN
      OfYgtfgMZlMXHYGWRCV9XyOPF+KSWFRgq/ksrkQncTSbtS6zK4Xdqsa94FiMAMdsYKSb8wumt7PT
      cHjKRvjM2K8XfLDsHXTZH2vG9Iw+cVSv4wMUeHyIeHfZhVrWDyrjiFWsy2zMfb2i15iZK6+MpdlE
      sY1CWiY5MUCc0k0cBIGE6NqQpmAGLT2OT9poPZncn+KBhvEWLYZ0Py4YdweCuOKIBFiMtzEfFk+p
      pcbEX42Nxrl6pMR9SNQ6gYeFesDQSojMOmZHJQhCSTjsABuJxS9EpKdJGmYmLI4liUBQWrgiq3D1
      voYHEPNEOy20TpvdLWZkHE6j0rs1eVySPYWvFyM0Hw8DPyo18jHsKlu6MXxrKNHZeefwuanjUD/y
      7PZZ6kRwvWDRebuK3zomjsbjLOqsMKsVwcRcubdF08/+CzaATWfu2PBRvZQ4UoF7iDPV2XgznPRF
      4e89BlcIX6X2Hz7a/8PewfOv9o72n3/7+PBY1Db6K2/DYzeSwnvpp0CmCkRR4zIlg77C/DbxRYmt
      Goz4ApZaBGxgVx52mvAzNltlZ37CkR21/Fv90VKvnXNwZZ/hLAsmJ6vWo8QuhlXk/FWqrnP9byVq
      49LauMj/f2dnp6T/3b6+0cR/Xcnzm2Iwz8fx9FeGyggXILIsv7LPDMbRKHbVvip1du05BqdmUVPZ
      WC36/gDnu4KdEMcK2AY3iePECH2eOrJHI0ENdFUcBR3Gv/GFttJR4PtNCq774mwK86sCHwBvIIyK
      luYcvmXG11ASw33Gy5GAdeKgLII6/g8dhPSKs761iyqCgD8IGbcArI0hgHIMQKxdZtzSZUE0HAGK
      WJnpNHCi1bFKAkST38VyRK01nfY1c7hZXRG6PY/cy4xxL1OHzKkyQDNqUd+huTXM0prWwAvPHnQy
      eX46FhPpWq+qoJKVUpGc1874+2dGvwoNSuFKbJTQPPZ6tEWguNwL4CKbrwQvWPuMRES63XVgiwQS
      WwpppGMtnmwjDRFv3qWLnrhdU5tnwQBLZYMtiqZ52B+wu/L1JVk489iPV2LSgGLIFxH20+wI+p2R
      Q4HNE45xU8Jhh11QsCP883/nJXHjF3mr5EaE/M6Gb3jtQ/XD0FNUdBO88GUnitSFV3G2HgtFemv1
      PXWggE9EMRIhQ60kdd4NYXefsmiQ+Clt0jCBp91eklR+eyAQnPiZXne/lGCA3VyD9FllJPwxf9al
      76nULn/ynHv62ovoMkcSKt3cn+sCtzogPJLxX3tD2ln08pBGGUct71yFVWmaq9oXKvSc8m3z/ar3
      n//4T14LTtJDH9PX3/yPf7/TurD30jX9u5BxzSBYqNYmsVrSKG5fpkHeENwmyfUKYhKKBrRLr7rE
      XmjhckQl7PE1l0/mmoDCzkMoQWYja2zn51Ru4pCIOsxAHSQwJ0wJDqBiEVZT3b1dWtUr6VsoiXOt
      8IzDHMRXmgE0QD5Gyq3sBDgasLfF5St7HexMq+7hWzU3koNHel96JXxI+KJks1p9LGDzlmnlKjas
      joUtM2TieP99qxoLujaHE0XCBVdkSyL7WplCjvOOuoYB1G0vY13MTENnRDsCRxXWWmKeDYCMdSDL
      dRvq3KbhXaqni9hVxVCHe5WrQf1zgECX66B9i9JI/ZaLjBysJNa8WMQlrWR+ekFSYZMkgG8lGIwK
      mdGzE1QST6Dts77S5mQzBx9r2OpOdQxa9MUHBkbUnNNEc4bkGUTUg9/TAA5ARg3/GU+FKqjiiQPV
      yWEUY4CDsf71mPrW1UFzu8eyJlaDIkdhUWfNX0T+1GqoIbUcO0H1eimDp9Q0QEvHhj+oRvQNdpjl
      Gui3XUpZO76PmRXUeaIjtbKWoSryFuULtMx3LuiZ0w34yAal0Z8VhJlgyGFGoUFfktkyq+CYv8FE
      XcARG1m45EAUtbCxhRxEL4HeJSsrMHlyuJjFyaWgt5BzOADLGPhyQ9CNt7O9TAJX/DPxWEwRxZ3q
      OEs7u36Z+6dUt2ZESYH5JOr/ogKYilA5lfDY6EtCq6xqFoD+xI9YglgjjTHTLWjPAoPv0gGCTMfD
      ALocG8rCM4c1pYHEtZlzwQLKWPJYokq2dwvrKV5zvyiAXQ04xrjyKcYN0VgIjgFPgzSHkzLaqop8
      JjiMtI6h6YlqyUURgrlYvEEji7bfoEDe4ut+nf64/KaIhVXBtuJ3VgrNvPaxIykpP8EvdP4lIDHa
      NserBv4yTItDdhQ9UM7TykvVx9ixBf2yWPdsmJHOhhtKVLdo4LfimyphRqEeVJX6O2xELCuqd4U7
      l+uFoey9dNhnp6CCNrGToByc8iGqbTz16m1+Y64WhV958URwvpuvSPWb56Kk3WVE1zhX9Fqlbj4A
      +ZIjPSoK3i9K35qj4paWMgpgp1Jagz1xdTKw4cY05Og01QZV0ef3knl22tZ/rRZrPXAMTdhJJGQH
      HaOcFhIX9TIYui2IMCPta8EHhmONxAtmtaRQL4Tj7BlJDTEuJXX3+bETcYRHO1P6LP/mfPmAAFYq
      3EGc02KA4JhzxwDQveWo7N0la0E9brqT/1weMWxHbVlhfMQX4dyv7A0Fc8pgceWWLd6zkWh48cWS
      QrjeUSGglvWAHBa0q+Wt7sElh9ql8rwfnpjz4xmtFlo+b197zdUDsiwahyeLNhpdzaOmqr3Sg1wG
      c1Dk6j+g0mdSR335SnekumccMIa/MdVUiiL8Kcg90qwk4VuvG12NSsni3qmuDx61D6GeGvsQHrvG
      zwG7Y5chHNV/bk1KRzyvbenyauXb89Isna8U/3ZeuF/URZRaa8fFlhzRBXL3Rp45IJcaiC6u5e3N
      QYU7LQPljSGCZqI4FYSOjp40JcPQp1mBcUn8ShJDslKJRu9vpVj3oylmSlWh7LZ5CD9Mb6u36W19
      pWFf6nQa5gJtlqcSsc4F0CFlFiPa3DqNhURv6UKFLLHlLCqPtsFV9JC2hYllIAnj/qMn3e0OSbk+
      XTQ73v2ApjgkpjYb9lbFbyMcRwwiGeFWKuCn0jmBdijrIPLIlBLsamqt2D7Uq6mohXmAqEcRKDsi
      4ZzOp+EonC3kzsSRMVIWMnUu5oAXH5fO2WMWcyIOpfHzYD0J1dF8KKoHhPRyefr/3P5Twsy6vCYu
      wv/b7vc3yvaf/vZOY/+5iuc3FkVt5U4cAeF/PtFrhhGpX+YOQsBkfzNC39raJzAg/U/Nn/Q/5GKP
      uxqSGNH12YKXw4dv6Cc5+DGbSV0cP5QK2LM0GO2KG/H/+z//+n+Ni9M/cDl2bIfbfNf8Djl8HuGS
      GRQuKsuc4I33DnQ5yazO/R11m0u0OlaxHzMioKwnZpsvY24+k1UToQBzcTKf4d+Ou2Fb7UkMWbqq
      UQxymW+76rXVfGgcQrZmfbRUexu8p6OWTKkmuarBBhQM+0o+J4jIPNa6xCh6Q9fMXu5ZVHaYZiCO
      Emb+2lolyQBUAyyl5hJtOddXR/m3Bbp2UPTdeFczoQ6pWKcKntYSjCzgeyQ9mLg/6tJK0pZRDFCW
      OugqQ6n//G9F22rXE6sUDEHG/DnN+0EV8rESSOBfSaHYsccVzEdiG/Q5bkfNgbpaS9QvubajVg8D
      T2laA3wdzgrBHrmYYMmhZD8QW0HZsdQbx+jcu1kMzMz9739hzBe7TGVINYM2JhOTqxKs/VWUA2Xg
      NCYwqriK46XxkzLtBQQsbxn8lXobsXFcxKlpjpOkhCAz1vLdyOY8SYH4M7ZclmGiprNyzDT1cWwh
      +pzLauRizOVarH/5b8x3P4Up+9XstmipDNyKi0Iu/CHn5h3WZYgMBbhS0eybXHHKjNnETweB0sEJ
      dMXsioMNA6A74rMh7UoWGw8g5Xa8Bz52a8f7LkiH1HE6RI7ufr3KFC/xphKT65E4YpCt5WhhpRrT
      +VjifRWc1SCiZdyXIjqR4YulSN2OQVCyIawdpXWNreUGLVRTHlRrgk+5KbqXBP5USEXjMLQ9uIgC
      Jpxe00UnnQtwuD2kyrFvAndNHwvafmak+k/TwKpjR9zkPnVizpSgLWluxCldzYEupSm4gOovlxlm
      eMOFjg6Cr7gQGDA6yRnDdYuPFFHK3gFzCskjyGz8JE/c4kDi1DhV2WQ2D+488u5Tt5EEBjwtg+oS
      uT0gPeULIYEHMRWVzYNiRuo3OXAC5KUauQ5hCLJBCiDPeMZF7FdsTCqsOIZ5vgSh9zgQzGL87v2g
      3lq1C5IGGmr4rA2LX7a7vp6QMATO2DO6N8E6ztb9JOza79ehksMx/UM1KaM3nkPJ2JaGV9+iai6Q
      rVdReLkFmXdFysCpPYuHUBy7OI55IzzfymkS/bYXxlxT3UIuqQb96gnGM/fTD6XmrkjF66t/ja5t
      zfMWT37/q+BPX1obF9z/trau98v3v+3NJv77Sp7fWGRyYvGlq52kLCTZOItPZmdsm8mlxsykjCHG
      hKQyeuFAIAFS3+K8gY5NNCGQfwogJB2bezCUZKMzDvOCSWEq+inr7uQkJPO+Is5vBQJNfOZZcA2r
      4vEl5BK3EsjBYcq+K+UAQP5lstAO8N2vt7JyoGcJw22qRWligebzW2oSTiaIhBKweVecdoDnOVD1
      jlTOsamSKAkgkFkemloTnUrF+Kq7tvZAQUaoOCBQDg8fSPY7z6ZVjjlCXC3DU+9l6IuLGSrRy53N
      FrxfyBYsVcI0gBzBpdTA6KtBxDEz28mn1YSgSlfprqNWd73t2NqdG47jvWjuZXCesI5xNgaWz20j
      qttOagDf1AJUWzAaLpjFonMUdw5z5TNwSH92vVftwvJl3oH2R6bfwIJD8rVTSUM6rKmYZX+oDM6Q
      KeK2CkDgmQ0S48ykyDBnMvQZn71/hRSsuWZ4DI6Qox5ckGokoL/sfmokKXZGmix4uUW7UXOeqyQX
      xSzfAJkJStZJPOfJp+mcmQ0y6nmHwUzCrJBzUQKlTJrFlRWbLsgm34SaRe5AoqRWRbd4AEL3vSIC
      Q95vrzakHyH1vgYBT6DnLY34toExo4Y4HEZDWYzHW02oaJ7c0YSLUsGuKZgbVkvYBc4FGoprY4ge
      0F2NKIHd50aasPRnpOoFnCgcP2f8uabn5OS4atiFl0VsE0Ya/XpxgdfWXO06J0X2JvB5OQvY80WV
      RMksnLJArH60RK6sfhkZzRv1AXoDRBweYOnGMAozcU7UlRvOnQowyhdkdpSwgXfTxE+l+klB2c6B
      1OyfOacXSHon21BUgq8U2tUEJ7mK9R4dLdhkEpihQnsWFNplxYoFM1xZeYj1wQqKd5UTt1neKF6o
      jhA9oviXEqge59cC9Uv/pBFM3/wQh4cKY/1jtgEh78b29jL5D09J/tvsb13/L972x+yUef7O5T+z
      /o/39+4+2P8o6T8ukv83+lvl9d+6vrHdyP9X8fwGKgT2kBMKUPlDAQdtPmJVaipEPKJe4EA7CPh8
      C6wQcGiSiDVs91fymP3vZCm89Dbenf/T9r/R8P+reGrWX0ENusjo2AM01Ye2cVH+v+s3yut/Y/NG
      w/+v5GGYMbieAborJwLBWXspWfrwqt/b6G3Ir6ALOP1+Z99u8e9G1dIS4wf/prSUWbyylotctqRd
      flfbNr9xfbic2uiNaNJR5E87va0bVGil4BKmkGXwvnpO1xvYoddtmdc1LWsttmkaHQyHI7wzunEJ
      ykgXvSiZ/pT14nSsda539S9dqaY3G/+SVwW39jEQThkz7dTf7m92N363Pdq/f286PXy58/XRaONp
      /2wzWhzefJodvvivO4v4MPgm+faz0R/3Hs7vD/1osf3zi++/eTD9aWv7j+nX48HOIlx8/3Py7S/3
      HiaPb07/+M2L8c/B/je3buWtTsJhQNcptLmX4FLb3XTHNwijZTNKr9aHk9DOqC2TBEF6d+mSnGW8
      HDd7/ZtOQ/Til5hn8U907932/vxn70/XneVaWvmDYObXNOD6JrbiRKIFlA5zv8BK629XrEhDK/jv
      /G9Gvqnh/8Yv8dLauID/E7Mv5//b3sb9r+H/H/8Rx2S1it4y2sC22fhwKJZP5Af6BJhZ8r26BMOS
      /u3jw11cEKDQ7QXRy14J7EO2np+EXweL2g/3Hh08/3r/e3AC4s8I/Be1JLGM87wTHM1AfaipgF/R
      h+vrXhna8S0fFNWk3shQcq+SlZ4+wDcHeaiXRM4NbHiUn71Aji4oAd3cMcaXqYfiBhwrYEx+kzgM
      SnX2KAUkwFAcTi1of8FNqvchQ/SzRTTMg2hOgrMjGqJNZa4c8dcDrXRH0sUvvCHt43gapJornp0p
      kjgLgVzRIZod+/I3muIomM9Sn6GonOh265fDBq2gnIgeoOxvxk6iVak4r+0Kuue6LmDihyYxWO7A
      Ji4bCkhTnJgi+lJ57E8U7oGzAUF9PvVhTfvEe8owZIp+OREvED9NGUIOatJwGuSQt5XGHBhZpzEz
      l8vL1XfyYOYNUriIaw7Js9gb+YusZ5wvAuBnzBjsjSYkWLxzx8zSvkfHOKD5TG1yGdzZNUx2EL9i
      XEn2w9Nt+h4dYzKrFGMWEIhlyKBJv0O/j07DJGEDKVE40ldybgrVz2hiKM5/IMkuh8FkQgU/aV0q
      Ctf5ZfHZTY7zKLpdKpstZfrLuSkHW3OX4ZzJ1C3O9fIVymYk2U7rE4syfxa/T41WCF6xxxmXy/vC
      NkU2EM0j52dJcXh5HDiv+iEPvp4VgxQe2Ai54wdBwHNCB6VJ7PaA4Uj6m8i+tYe4yVEA9nPkp/5p
      x/s9XbSyjvcoDRf+ysrTQLkkjeebPvFlWtahOGWNwow4aaYB0POE2DwaMqQ18anfpz2pVnSA82Rk
      eJi8FSctdqEeLLx7aUj7vSc94OBqjVQlfgrvxiAPl6TDNBxH8Padmo0IWWOiJvuEQTp5CNIyFhl3
      OPiSslWyO09oMDI1J8zoARcZBC+EZDBijGScQnQ4/mLl13XWHe8LnbIZ1821xOs/LZBE7sHL/rww
      rfJeETAnO+UwgQJlNgMkTks8MnAfLdlL9YUF5NSm2hL5Bl+ylm9Ijkob7/kkiBPGTOO8p16bjiCf
      K5FymRTkbfA8BOKRUzZfUMhUiqkZn8FFraaelccyVj7DOSZcIv9MvimbdjhaSPpP2cYfJ7WUs1eX
      BKiV+K9SoH9WHyn7RihEBPfFU5tV+iz1E1lpJODy0xcjydVDYz9h+Ec252LeEvVYPjHr43QFTg4A
      OriFTvU0Drq9/qfj4+P27V1oBFdv/5itrYcdr9VazT+g9/TztXX++Qv3bHHiMLXyyzhEHvhhdIms
      eErVFfiuzQ+I2Fcr25UEQ3pnBmtmr/heGUpZ1P6i0syxwLETiV17XazkvHVc832rvf+KZJNZMNq9
      QNRdlRSG9QOrnL91DKUySj00mUpkgEtPsmrPS3Gzti7q/Xwy6Xibq0IesiK9IXIhtU0FQZrGKb3/
      S9+c/zae5fr/S1H983OR/XerEv+3s7V1o9H/XMXzHvp/By4Ib2pc3vPr74nhmuI6VeI0ms3FZ61z
      y+KNaCs1KuV6Df/fkj72qh+7/w3qy0do493tv1vb/cb/50qeyvpfuvX3Ley/O9fL/P/GVmP/vZKn
      yP+VCK7Y+uu2ym8a229j+21sv1fyVPj/pVt/L7b/3iBhv4z/caOR/6/kaey/BZUShzCV8BbFaGsA
      UCW+Ggmci7DqAtppAC17YijmCAYEkCeJ6lvPODBlWAEE77hB6QAy+pCB5IBrJZAxmjpZMweicddr
      Cwy2d77q3fqyAkNI/x+FxdKWb/6BaOH7OH1BfBP/5MiihUELRwaMoeSWhO0vimHuOAVcSFbSn7YO
      48zbi8YANeEjkfbaQrPTBX5Z22rAt3cN8zZg2Nwux854ozT85ZdJUC7JkLKmIPqLaK7sBU6u0pdH
      i1EULGwbiICZLCR0auF8e56DkKmqM5+uHzCpz5iipwAG5RTzhXq+MKKJXRMHJNOuS8ebRyFQ41rD
      YJKF86y1ZKVQ+MJFojqlll2vf73jnfinaRCdBuFs19u+UVaClxbGKbt5o1j2Zr+mrLtMbrv9Urub
      lbLFhXLLfl4su7NTKVtcOrfPm8WyNwrtOksp08kWwFsyq/lauvVtlPpys1oJkBtgVZIlBIZiXqLl
      3Raw6Pwnb1d+0TbKtWWL6YAY1PLqWv/x7/daVEkLMPQV2jy+9pr7c37ttdR0fqwkuHJ+OazTBXNt
      VzN15mGVavleVeZq8yUraJCjYzL7RgGpGXuH4ZpRlOPHnEhYYawMFwQ05cthog5OG029Zhy2c4vE
      mjTh5jBwmIP5abe0I+sSEhQ+cEZP391XoGaDcG5Q2x3GDGunrxnEQKml+vLZK3fFGYDYBmssW3TY
      Ek9CNHddaSZOTqJQ/85pQTT+S2Aiq+MGWTD4p9od+YxqB71xz/tUeMunHe9T5hSfrrZqKz2v/Hpe
      bd2IGrveDy2evGdL7HaFm+QlEYDD8N+JCJxyzeovW/36tsA7L6O/QTSfMs3oqdwpMONnbz1QZyWZ
      rbc1NfCuOWmukrhXnn34QaAA+7llVTNiFkCzL9Fwy9jdjtm96Dtj4e9vOb4YxdV/kw9GXRrHy8m+
      4WTd4GR/WknPoFxzxlFTZqz732aWGolrw3iOe5ADw9158xhrvBfe6LkgZPGsxnh8/GNEY0yBXu0U
      zDGIL4ZM/3APAKASqLHJJGf6WA4BYuRmUms9zfNHm5VnnNw8R0+etcKYzd3yB5zi4sxPpyaxj5Wy
      YbWX1CXeEcs0OXdgzIt7lsP0WpdhJF+m/7886+/F9t/N7Yr+f6PJ/3c1zzvr/0vW3ycukrKBgXN3
      emPj/at+zP7vjekqMY7iNLj8Ni7a/xv97XL8b39zo9n/V/G49rBmg/39Pfb8v95N/fHHgYF5D/+P
      /uZO4/9xFU9p/T+C98fb+H9U/f+uN/LflTxF+Y+J4Iq9P/I2+ffG96Px/Wh8P67sKfH/j+D9cRH/
      729sXq/g/2zfaOT/K3ku9v+QL04y9+1Jlr9B1kj3Hf796/Mbke/uPrxz9PzuwWN8SsPo/RSHUfv5
      81GY4rjq0Bmk+Og8/g9UXh7GvjgFcKYJC72e5bCk9qd1TcSApC2IntWs18iqnpx6gwAAzpwOUzKn
      BlolDEM2i8EHGUOtThR4b3dNt9rUq6KyHUDxULQ/c2OFOK89/XqS9YDYSYWOFtGQC/fo3SxI2yfw
      ZzjpIeXt03B22m71Zq9mrVWjS3bSCHLeVEQIotJq0sxZOJvA3s5ZSU1kmtRWilbrro/pF6/l5JGz
      Di+cOsZ2+B7VxT3OaYL63uE2VqmO+ezkZmu1mFPyKJkgijTyBhOfVoIzVRg9vl25rNyypBy5ZbrQ
      y1BLe/3H6Mfos3U7WQkmK9E4wN4kiMa0A7/0rm84Q3FmTGiBpkyqL2daZGx/yfDnSaaEXR5ZR+bS
      CWnn8tpsIf+eOSL5D/U1QLWXEON3xM5YiHkFAkMXPGOU0zR/ATjuTMGaeaiDBbsDTBHuCavAgtEb
      WOduAA15MzhJQ8T0IzYXmzYkK+YDycJpOPEhul3OVtJRBG3uYyff7R3vBdHAVnFnIaHoUx6GsNKj
      YNb+oUVcAnQdsvXRT/kfZz7/C8AG+JOmosWcK8jkT/6U/xfh//EJWy7jlCuSn/j/s7j1rBDzx/00
      feB/9GbxIRy67tCytPMcjZZunxLV5r8q+Z6BfM9yut1EIsVP7Ph6p37WPlstRsdmWGTEGtpJ6k39
      pE3/qneEejWTb/OgWbejFbcaRnS/5QyQ9j2Az9vtbD7tMPmUPK5cdjFnZtHmmOIpm2GwQI+D8f6r
      pI2yNJljYmY4pH54ZnZsbYJXas77TKp0tlfHc7e2fvra6/WQk6Oj3VfXozKsg8xcZRFGGM6oJ0W/
      pPqdxYvTWbvtd7wBj3mgH3U9X/7mfop7RXuDCPYy4nn3ivkhkeWH0wdkLxwXIjkIJ4tLtPOJPfap
      NEutto1l9teHh1OxUbsmaZ1fRnbIOOePTTTpIy16Jumh6Ib5ZqSbMkKJbd5WVxfr7tDklUKNOFRl
      ScqwXu8///GfPH8+ZkBx/N3kXfoo1OWSlsPuDZVZg7l12uWlcpNdsdm8Z77uA8JIB1JOWybJxtwj
      ptKsqWaTKEOnoIKWkqNzmKpGJnGZKb7V8+7rrBUA25eCt+CMffiHw+/dLGgudbQwYvg2LEhWsr7Y
      wajXuiTMACYBRby3CSLUR2Xksp+PCS4wcwT+WyWx2lxD6kACDgVw+drr/CSU8+TcVlhIXXfttant
      /MeoFkbgVgtCMbGs9s5G6djNXVRc55nW74x09dI3OU/gsDKKSXZKJvEiIHmMBV3ad4vAT2+7CiCT
      7UFWf2SwaMzdrPqt8bpP0pCB0WYh1ovT+OaoR6bYs+qNwXIlEoHtgMo3B8er5Rv9Bp4t5nudu9oi
      LVpu76lzaNG/q7cKObeUGZkTZPnJ80VtU24lS7vzY2Q6tLw3dAFZ2pVlbKq+S7amN/SnRTJNhcz4
      XGhQHv7CT0n/l2scLrGNd7f/bfc3G/zvK3mWrr+D59DljISswoAi5Z3buMD+d327nP9hc3Or3+R/
      u5LHSQjmPQHy2n271iwNHSFjmk83YuQHp8P6sRzWj+SwXtnj1NIjdviN4GTL2acHwAwbTMMZ8IEY
      fSxBDmqToVrQyRSAbrBAetVJgAAupHcSfC5DfVTVCS6f0yAdo4s2wy4ODW+Q+gxHd0cbl0xwJ4C9
      lCRtA4jByDFGB1GIm/IpJzmahFQSzqIMkpTkaqAwOkl9C1NidNoI30tjJIIVzeyZQZMjOaSnMwKR
      BIJKoJBMAjmX44tq8irbIQbFg6f0o8fIeneKPFKZkZ5DuAuzV/9oBLA69q2jCTwJgtHAH0rut3gw
      8y3ooRcFWA+gtJnOZqW5662sfMXzhSJHjDw6Xqw8Kc6lrJ8vDsgD9mj1vVEAoY59mDn1ODyUJ5KE
      LuTkzJx9iRNfdSeMMnoSiD+7VEorI1fikUJLUXs9TzrDPv5KNgL6lqeSjkQKgz/+utTuOB92BC5X
      nX/R4Dquo11MJnsfimBK35yEr9ax/lGX1p4FKNM4NayZwgZYbFEu+mMoCGcyK5Y0R34IfNjYm9Kc
      IxMXTyt39GQSDjUxMXJhk6R3ckIVT2nFaM6fQJCiGX8stMTMlbcNdEQ6T5mlNA4AmCFxt4d0XpKS
      2nbi5sZvdbch5hFgkEYKRmX8higGudwO2MosU6DV5fQ8Etoi+R3FYk71FZ6E9DuyxAXRiDN2EWnv
      R6PuLO4iW7lUwsvEjTM90lpgojluK+2e+Cyec9JGIRGnUOJnmc2GfJBfaJVGSxwC+JwDs+808RrP
      94hzhHWRZFDhe2mzaK7JFcPLMk1YFia4kzIJAwWS1i+OuhwhlsYSECtb0PxqmY5sgmGe8LvAIhB7
      hlubbuv+NmgCQb+4YAwCg1U5gsLF1k1EAGs2Prm2ubGBjZP4oawEq64Zp5KGbTsRZqYwllMaBc7b
      rDulrQBldWFJtTfXb3pE0Xo/whI/6mOFH216GV3eU8aF1co6qiTgS7+yebcB9j2fYL+vrNxlFsCX
      S8P6H038CCiBI/uKDRzOVMVIwuih2YX3hNZ15EtQ75NT6iAzwH1e1GiIxImvwAZ8TrcnVQpMVIbs
      yZyR8yyMRsQe5KJe4Mi+gIZOGJU7LUBR0TWV1iIVenS7anYc+ytL2tFAyJzOrnDGyftcoqUZ4hPI
      TUF3EqbZDKtTODVgM5BzhnbFy3CYH472PPHg32AuvhrglHfOo1mPmG5HEuAniKn2qoz1cPM0O4c0
      RpnMB8SRzHbkVKDmVDbiXTBy1p6NsrTxDdy47gywEA5P11FoLWCLM2aNmjFK+IFNSUmfz+ZJxwMe
      LU2jTAkCNjPJ+8pHF4c0sNcFkhkO4vhFBrBOd0ymy4IvazNMZQgJK0oTjirBTHQ4M9DsyIe4V9cV
      JIdkU0Z77+7jbLWePwKQlqeEI+6GpxFzO9VaFsSN6XxCOxxRPkSJ2a8n/9VS+V/3MZHRz+8l9DvP
      RfJ/Jf8z/trgf1zJozZQ7x5vpwjgBHvZCwBDG03Zyopo7HKJIhPkdBdzPJsnCR0at1meND+CRSOV
      Pcl4QCQtVsFs/GhCp2zHexAO0xhJpvkKQkzi92Hqd7z74ex38wH/eYhszHwf8SdBhhQJkEKJAx09
      YaGFFbfB4JQ4iVFgs3LXBt9hR9vM0ZIsoNAfOaxPaK+HtMP/6CdhIIgeANYv1BLFXZXBiCBMsuSY
      c6tmyCQs/DxMR11IIQvLPolrQ29K9dlcBZK3eMamTQZIDIZAR7wt16rCV1RMPyRGePTwjrfpPSG5
      2Ds48IYIz2Xxjb8cgr+n9tz6liTKgO9xBhh6f46QXjph6BUY/V2tn87hdJHwlY2NXTM9I/b2j7qb
      2zvmvQnJR/0kRWeh+e7J4ZHX723Rdazcc759caaLMIsnvjZhwhkhdnsTf0EF1GoRn3UnyGsrEwKZ
      JYnpSAt5Egs64XxpjHYYZ2cmdHiEVL1Uqxyn0IcHKjGDyrBOwJeO6Rh/KRaxTAfGaNGZiLiQTo2Y
      rje2NLZVXiPpL+GOox3OmhupHYEOb6pi9BIgKFhef7IgmZSI++joYQfdjXlkunOEuucRJ8dVSVzy
      Y0uj+1hUKkRTZdoWAuli4Eo/tud0B8A5ztTiyiYdQ/pHh3s4i50PLbllc0nLrZKTdEyLwVrDGOTI
      9mwXY47kxAHqrDKG8dwnIpkFwe0VzJtpRYRX+3Lkff557/Pfak0dpE8mkZg4EhMtligQyyWNPGI7
      GMu4WMEoMXJofBZxP4zVoedOWt4w7hZRMI5nIW4HQXQqC4QZyUkC3fn8t6YjPu6lmduJWPvASWCq
      DR8yRcm04Mo8F8oiKZb2MMsQRginjYbll/lgyS071TQdp/rD0FTBCPjCRUaxdwBdA3JNTxe8jW6v
      8EaWHzNzhWLgivzqjUqPgtmMvVtQH03gSG3CXPwBrzpLoZpCmabxVd7FfMPR/r9z9F2Hsb2FSPaR
      bUKz1BDZ3oMQJVnGld1Lem/mCi/jyZxzEgRO5WoCYqXRgu7nJGcTU9UMJgK8JN4WggSv6b0zvjaR
      XDoxyEPCR3lhYFiD99ULgQrhBPAybXn+aBmfuqlVjw1bjXgDAWVhJOoRvrrKjW8UIJkJrqcHvAFY
      yp/GA3ir0TEyUbH69sof9Cx8eMSj2otGaUz3QOebuj5g7/AU11C0yVtu2jIspYaBKYdAh3GR4KTg
      rJqRv8VTLDz/XXR0mF9mqvPsFCZZez3QRnkU1KJx/+cfiCUi6zgRXSpfOWPMvzQ/9vvO14/K7QCd
      /oQmk7HrlaQ5Q/2YYYSx46CH4qSz5sTjKVAa//UI4n+hZ6n8f5p27aH7ceX/rZ3+ZlX+b/y/r+TZ
      V4O991UQBSeh6jEPA5941COs/2Jl5Ttj5cerR08eruxbK7+yYG9zQ3gi0n5ArcUnH4nTXpu+X7Un
      YwccPJ2L/Od77DNCRfq9nRtS3opQPTRkdvw80zu58Tegc4O+zFiBgHKsx3eye6B1/8xfyKEHDtEj
      aZerQbX2mO9rt7WdNJ5McPhCv6l2BtFJgwfKyb5HjczzmgbBAhp+Uw9nzk5PglBFXJSBQpWOhaNw
      +ELmlaX7oDKF/dIUZigw4YXIp886eNvTHL1g+QRiTM87ykuxLAY/GgxLBsWiHIlL8UwZKf2oxoqh
      n53qmT3IhN9O4mhsBJ7ZKYRnWOcBcIj+yrz70CmRUPMpNxUYDZ7RpNDAH/kALKKFksEDjS7hn9Rg
      MgnH1t7R32E9KE/CyRwXBp6KxFTBA+sUMFW8Aa25NwhTydaFEUZx1LU/aFsd5+jzR4j5wbzKu57S
      u1E5zfwXQWTVu5tCkJkFIjqlWyQNl1tguhtJCBEJEESP4S+iP0NSmilmBNnYzFbCymNcXabQnAYw
      a2xPSbkMUgImQoGYdbszMDcwOHG9/D2/Mv2ms7JrVeaDhaBSisUj14Pme9cUy2dzNGc9HosMVsLu
      b/hT9GUrmeoJG6aq6sMofiFRmOhGNHLcMeTniUSGtBpdEA7Ju6mItj6oLegOFl38iUAQ2Ticr0zD
      sbxhmNJZBMU0aJElu+8e6b3QqH8hDQf+RG9cT4PJhI1rhpfxLZAdvWjXWm0EfkgDkgYz0MCUb0CT
      jjdiEhPJ56WoCMMom6cMYsmdszOn4ijNg6VeE5wIajrINbcdUe6boo7ISoupvXVNA/2NjZwHmutH
      mQuOF0jPMh0QBzwNkwyBCDOuibPGQKieynY51blJ8BE4o58smFUKmzQ96KaBXMphvKQNjovdoyBl
      QR6Df2xSKlInkbaPvmEaL3xk8y6mvNq4/IGxnEH/nfMvIqDfz6OAq7pLc4FB9AqV0tT9RIQp1MPQ
      f8Tp4lwudihJyZXvLlqX0akPF8NJUCB2okPDaX3YkkJOC0Wybxa458FvPbECQvR0R+eLOMl3HEOh
      +gEulajen2Qx1qnA0ZDFE9w2jnAHnPEhxZvf6TyfLH8hQbU+/vsy0X/eAv9np4z/sX290f9ezfOO
      8d8l9J/HJhCnqx7EtHPUGRhbuf147/6qsdE3QEB/jY/d//2u5JD7CBAg74H/sYP8H43/38d/qut/
      +RAgF+N/7JTW/8bGTnP/v5KnyP8NEVwxBEihWX7VoIA0KCANCsgVPFX+f/kQIBfx/42tzbL8v3lj
      p+H/V/H8zeV/KcXd0bK1KwGW7D56QfTuqjEm8rboGK8SDVNVcz2s/iZw1TTx+F1jXBEDxd3kGnpw
      X27nscbl6HYbVvWA4ynNh7vlGC8bn6UfmIgrbUWirYI0RQuFoCv8uNpEXv2dPEvl/0tUAV2o/9ne
      KuP/9Tcb/L8red5d/i+pgL7ys3Cowd2QauEeBMbbaH2ap3map3map3map3map3map3map3map3ma
      p3map3map3map3map3map3map3map3mu5Pn/a4ZiPABAAQA=

services:
  configurator:
    configs:
      - source: project_source_tar
        target: /etc/labspace-support/content.tar.base64
    environment:
      PROJECT_TAR_PATH: /etc/labspace-support/content.tar.base64

Docker commands

docker compose -f oci://dockersamples/labspace-ai-fundamentals:latest up

Use the above command to pull and run the Compose file. Learn more.

Images used

Model

Solid LLaMA 3 update, reliable for coding, chat, and Q&A tasks


Pulls

500K+

Stars

32

Last Updated

over 1 year

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

8 months

Image


Pulls

8.2K

Stars

0

Last Updated

11 months