#!/bin/bash
set -e

function create_files() {
    # ICONS_BY_EXTENSION
    touch example.3gp
    touch example.3mf
    touch example.7z
    touch example.Dockerfile
    touch example.R
    touch example.a
    touch example.aac
    touch example.ada
    touch example.adb
    touch example.ads
    touch example.ai
    touch example.aif
    touch example.aiff
    touch example.android
    touch example.ape
    touch example.apk
    touch example.apl
    touch example.app
    touch example.applescript
    touch example.asc
    touch example.asm
    touch example.ass
    touch example.astro
    touch example.avif
    touch example.awk
    touch example.azcli
    touch example.bak
    touch example.bash
    touch example.bat
    touch example.bazel
    touch example.bib
    touch example.bicep
    touch example.bicepparam
    touch example.bin
    touch example.blade.php
    touch example.blend
    touch example.blp
    touch example.bmp
    touch example.bqn
    touch example.brep
    touch example.bz
    touch example.bz2
    touch example.bz3
    touch example.bzl
    touch example.c
    touch example.c
    touch example.cache
    touch example.cast
    touch example.cbl
    touch example.cc
    touch example.ccm
    touch example.cfg
    touch example.cjs
    touch example.clj
    touch example.cljc
    touch example.cljd
    touch example.cljs
    touch example.cmake
    touch example.cob
    touch example.cobol
    touch example.coffee
    touch example.conda
    touch example.conf
    touch example.config.ru
    touch example.cow
    touch example.cp
    touch example.cpp
    touch example.cppm
    touch example.cpy
    touch example.cr
    touch example.crdownload
    touch example.cs
    touch example.csh
    touch example.cshtml
    touch example.cson
    touch example.csproj
    touch example.css
    touch example.csv
    touch example.cts
    touch example.cu
    touch example.cue
    touch example.cuh
    touch example.cxx
    touch example.cxxm
    touch example.d
    touch example.d.ts
    touch example.dart
    touch example.db
    touch example.dconf
    touch example.desktop
    touch example.diff
    touch example.dll
    touch example.doc
    touch example.dockerignore
    touch example.docx
    touch example.dot
    touch example.download
    touch example.drl
    touch example.dropbox
    touch example.dump
    touch example.dwg
    touch example.dxf
    touch example.ebook
    touch example.ebuild
    touch example.edn
    touch example.eex
    touch example.ejs
    touch example.el
    touch example.elc
    touch example.elf
    touch example.elm
    touch example.eln
    touch example.env
    touch example.eot
    touch example.epp
    touch example.epub
    touch example.erb
    touch example.erl
    touch example.ex
    touch example.exe
    touch example.exs
    touch example.f
    touch example.f3d
    touch example.f90
    touch example.fbx
    touch example.fcbak
    touch example.fcmacro
    touch example.fcmat
    touch example.fcparam
    touch example.fcscript
    touch example.fcstd
    touch example.fcstd1
    touch example.fctb
    touch example.fctl
    touch example.fdmdownload
    touch example.feature
    touch example.fish
    touch example.flac
    touch example.flc
    touch example.flf
    touch example.fnl
    touch example.fodg
    touch example.fodp
    touch example.fods
    touch example.fodt
    touch example.fs
    touch example.fsi
    touch example.fsscript
    touch example.fsx
    touch example.gcode
    touch example.gd
    touch example.gemspec
    touch example.gif
    touch example.git
    touch example.glb
    touch example.gleam
    touch example.gnumakefile
    touch example.go
    touch example.godot
    touch example.gpr
    touch example.gql
    touch example.gradle
    touch example.graphql
    touch example.gresource
    touch example.gv
    touch example.gz
    touch example.h
    touch example.haml
    touch example.hbs
    touch example.heex
    touch example.hex
    touch example.hh
    touch example.hpp
    touch example.hrl
    touch example.hs
    touch example.htm
    touch example.html
    touch example.http
    touch example.huff
    touch example.hurl
    touch example.hx
    touch example.hxx
    touch example.ical
    touch example.icalendar
    touch example.ico
    touch example.ics
    touch example.ifb
    touch example.ifc
    touch example.ige
    touch example.iges
    touch example.igs
    touch example.image
    touch example.img
    touch example.import
    touch example.info
    touch example.ini
    touch example.ino
    touch example.ipynb
    touch example.iso
    touch example.ixx
    touch example.java
    touch example.jl
    touch example.jpeg
    touch example.jpg
    touch example.js
    touch example.json
    touch example.json5
    touch example.jsonc
    touch example.jsx
    touch example.jwmrc
    touch example.jxl
    touch example.kbx
    touch example.kdb
    touch example.kdbx
    touch example.kdenlive
    touch example.kdenlivetitle
    touch example.kicad_dru
    touch example.kicad_mod
    touch example.kicad_pcb
    touch example.kicad_prl
    touch example.kicad_pro
    touch example.kicad_sch
    touch example.kicad_sym
    touch example.kicad_wks
    touch example.ko
    touch example.kpp
    touch example.kra
    touch example.krz
    touch example.ksh
    touch example.kt
    touch example.kts
    touch example.lck
    touch example.leex
    touch example.less
    touch example.lff
    touch example.lhs
    touch example.lib
    touch example.license
    touch example.liquid
    touch example.lock
    touch example.log
    touch example.lrc
    touch example.lua
    touch example.luac
    touch example.luau
    touch example.m
    touch example.m3u
    touch example.m3u8
    touch example.m4a
    touch example.m4v
    touch example.magnet
    touch example.makefile
    touch example.markdown
    touch example.material
    touch example.md
    touch example.md5
    touch example.mdx
    touch example.mint
    touch example.mjs
    touch example.mk
    touch example.mkv
    touch example.ml
    touch example.mli
    touch example.mm
    touch example.mo
    touch example.mobi
    touch example.mojo
    touch example.mov
    touch example.mp3
    touch example.mp4
    touch example.mpp
    touch example.msf
    touch example.mts
    touch example.mustache
    touch example.nfo
    touch example.nim
    touch example.nix
    touch example.norg
    touch example.nswag
    touch example.nu
    touch example.o
    touch example.obj
    touch example.odf
    touch example.odg
    touch example.odin
    touch example.odp
    touch example.ods
    touch example.odt
    touch example.oga
    touch example.ogg
    touch example.ogv
    touch example.ogx
    touch example.opus
    touch example.org
    touch example.otf
    touch example.out
    touch example.part
    touch example.patch
    touch example.pck
    touch example.pcm
    touch example.pdf
    touch example.php
    touch example.pl
    touch example.pls
    touch example.ply
    touch example.pm
    touch example.png
    touch example.po
    touch example.pot
    touch example.pp
    touch example.ppt
    touch example.pptx
    touch example.prisma
    touch example.pro
    touch example.ps1
    touch example.psb
    touch example.psd
    touch example.psd1
    touch example.psm1
    touch example.pub
    touch example.pxd
    touch example.pxi
    touch example.py
    touch example.pyc
    touch example.pyd
    touch example.pyi
    touch example.pyo
    touch example.pyw
    touch example.pyx
    touch example.qm
    touch example.qml
    touch example.qrc
    touch example.qss
    touch example.query
    touch example.r
    touch example.rake
    touch example.rar
    touch example.razor
    touch example.rb
    touch example.res
    touch example.resi
    touch example.rlib
    touch example.rmd
    touch example.rproj
    touch example.rs
    touch example.rss
    touch example.s
    touch example.sass
    touch example.sbt
    touch example.sc
    touch example.scad
    touch example.scala
    touch example.scm
    touch example.scss
    touch example.sh
    touch example.sha1
    touch example.sha224
    touch example.sha256
    touch example.sha384
    touch example.sha512
    touch example.sig
    touch example.signature
    touch example.skp
    touch example.sldasm
    touch example.sldprt
    touch example.slim
    touch example.sln
    touch example.slnx
    touch example.slvs
    touch example.sml
    touch example.so
    touch example.sol
    touch example.spec.js
    touch example.spec.jsx
    touch example.spec.ts
    touch example.spec.tsx
    touch example.spx
    touch example.sql
    touch example.sqlite
    touch example.sqlite3
    touch example.srt
    touch example.ssa
    touch example.ste
    touch example.step
    touch example.stl
    touch example.stories.js
    touch example.stories.jsx
    touch example.stories.mjs
    touch example.stories.svelte
    touch example.stories.ts
    touch example.stories.tsx
    touch example.stories.vue
    touch example.strings
    touch example.styl
    touch example.sub
    touch example.sublime
    touch example.suo
    touch example.sv
    touch example.svelte
    touch example.svg
    touch example.svgz
    touch example.svh
    touch example.swift
    touch example.t
    touch example.tbc
    touch example.tcl
    touch example.templ
    touch example.terminal
    touch example.test.js
    touch example.test.jsx
    touch example.test.ts
    touch example.test.tsx
    touch example.tex
    touch example.tf
    touch example.tfvars
    touch example.tgz
    touch example.tmpl
    touch example.tmux
    touch example.toml
    touch example.torrent
    touch example.tres
    touch example.ts
    touch example.tscn
    touch example.tsconfig
    touch example.tsx
    touch example.ttf
    touch example.twig
    touch example.txt
    touch example.txz
    touch example.typ
    touch example.typoscript
    touch example.ui
    touch example.v
    touch example.vala
    touch example.vh
    touch example.vhd
    touch example.vhdl
    touch example.vi
    touch example.vim
    touch example.vsh
    touch example.vsix
    touch example.vue
    touch example.wasm
    touch example.wav
    touch example.webm
    touch example.webmanifest
    touch example.webp
    touch example.webpack
    touch example.wma
    touch example.woff
    touch example.woff2
    touch example.wrl
    touch example.wrz
    touch example.wv
    touch example.wvc
    touch example.x
    touch example.xaml
    touch example.xcf
    touch example.xcplayground
    touch example.xcstrings
    touch example.xls
    touch example.xlsx
    touch example.xm
    touch example.xml
    touch example.xpi
    touch example.xul
    touch example.xz
    touch example.yaml
    touch example.yml
    touch example.zig
    touch example.zip
    touch example.zsh
    touch example.zst

    # ICONS_BY_FILENAME
    touch .SRCINFO
    touch .Xauthority
    touch .Xresources
    touch .babelrc
    touch .bash_profile
    touch .bashrc
    touch .clang-format
    touch .clang-tidy
    touch .codespellrc
    touch .condarc
    touch .dockerignore
    touch .ds_store
    touch .editorconfig
    touch .env
    touch .eslintignore
    touch .eslintrc
    touch .git-blame-ignore-revs
    touch .gitattributes
    touch .gitconfig
    touch .gitignore
    touch .gitlab-ci.yml
    touch .gitmodules
    touch .gtkrc-2.0
    touch .gvimrc
    touch .justfile
    touch .luacheckrc
    touch .luaurc
    touch .mailmap
    touch .nanorc
    touch .npmignore
    touch .npmrc
    touch .nuxtrc
    touch .nvmrc
    touch .pre-commit-config.yaml
    touch .prettierignore
    touch .prettierrc
    touch .prettierrc.cjs
    touch .prettierrc.js
    touch .prettierrc.json
    touch .prettierrc.json5
    touch .prettierrc.mjs
    touch .prettierrc.toml
    touch .prettierrc.yaml
    touch .prettierrc.yml
    touch .pylintrc
    touch .settings.json
    touch .vimrc
    touch .xinitrc
    touch .xsession
    touch .zprofile
    touch .zshenv
    touch .zshrc
    touch AUTHORS
    touch AUTHORS.txt
    touch Directory.Build.props
    touch Directory.Build.targets
    touch Directory.Packages.props
    touch FreeCAD.conf
    touch Gemfile
    touch PKGBUILD
    touch PrusaSlicer.ini
    touch PrusaSlicerGcodeViewer.ini
    touch QtProject.conf
    touch _gvimrc
    touch _vimrc
    touch brewfile
    touch bspwmrc
    touch build
    touch build.gradle
    touch build.zig.zon
    touch bun.lock
    touch bun.lockb
    touch cantorrc
    touch checkhealth
    touch cmakelists.txt
    touch code_of_conduct
    touch code_of_conduct.md
    touch commit_editmsg
    touch commitlint.config.js
    touch commitlint.config.ts
    touch compose.yaml
    touch compose.yml
    touch config
    touch containerfile
    touch copying
    touch copying.lesser
    touch docker-compose.yaml
    touch docker-compose.yml
    touch dockerfile
    touch eslint.config.cjs
    touch eslint.config.js
    touch eslint.config.mjs
    touch eslint.config.ts
    touch ext_typoscript_setup.txt
    touch favicon.ico
    touch fp-info-cache
    touch fp-lib-table
    touch gnumakefile
    touch go.mod
    touch go.sum
    touch go.work
    touch gradle-wrapper.properties
    touch gradle.properties
    touch gradlew
    touch groovy
    touch gruntfile.babel.js
    touch gruntfile.coffee
    touch gruntfile.js
    touch gruntfile.ts
    touch gtkrc
    touch gulpfile.babel.js
    touch gulpfile.coffee
    touch gulpfile.js
    touch gulpfile.ts
    touch hypridle.conf
    touch hyprland.conf
    touch hyprlandd.conf
    touch hyprlock.conf
    touch hyprpaper.conf
    touch i18n.config.js
    touch i18n.config.ts
    touch i3blocks.conf
    touch i3status.conf
    touch index.theme
    touch ionic.config.json
    touch justfile
    touch kalgebrarc
    touch kdeglobals
    touch kdenlive-layoutsrc
    touch kdenliverc
    touch kritadisplayrc
    touch kritarc
    touch license
    touch license.md
    touch lxde-rc.xml
    touch lxqt.conf
    touch makefile
    touch mix.lock
    touch mpv.conf
    touch node_modules
    touch nuxt.config.cjs
    touch nuxt.config.js
    touch nuxt.config.mjs
    touch nuxt.config.ts
    touch package-lock.json
    touch package.json
    touch platformio.ini
    touch pom.xml
    touch prettier.config.cjs
    touch prettier.config.js
    touch prettier.config.mjs
    touch prettier.config.ts
    touch procfile
    touch py.typed
    touch rakefile
    touch readme
    touch readme.md
    touch rmd
    touch robots.txt
    touch security
    touch security.md
    touch settings.gradle
    touch svelte.config.js
    touch sxhkdrc
    touch sym-lib-table
    touch tailwind.config.js
    touch tailwind.config.mjs
    touch tailwind.config.ts
    touch tmux.conf
    touch tmux.conf.local
    touch tsconfig.json
    touch unlicense
    touch vagrantfile
    touch vercel.json
    touch vlcrc
    touch webpack
    touch weston.ini
    touch workspace
    touch wrangler.jsonc
    touch wrangler.toml
    touch xmobarrc
    touch xmobarrc.hs
    touch xmonad.hs
    touch xorg.conf
    touch xsettingsd.conf
}

create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files

mkdir nested
cd nested
create_files
