| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | #!/bin/bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # My Alias | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Software | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # ffmpeg Customs | 
					
						
							| 
									
										
										
										
											2021-06-13 16:07:05 +00:00
										 |  |  | alias mp4-mp3-folder='for vid in *.mp4; do ffmpeg -i "$vid" -f mp3 -ab 320000 "${vid%.mp4}.mp3"; done' | 
					
						
							|  |  |  | alias mp4-mp3='mp4mp3(){ ffmpeg -i "$1" -f mp3 -ab 320000 "${1%.mp4}.mp3"; unset -f mp4mp3;}; mp4mp3' | 
					
						
							| 
									
										
										
										
											2021-03-22 20:43:44 +00:00
										 |  |  | alias mkv-mp4-folder='for vid in *.mkv; do ffmpeg -i "$vid" -vcodec copy -acodec copy "${vid%.mkv}.mp4"; done' | 
					
						
							|  |  |  | alias mkv-mp4='mkvmp4(){ ffmpeg -i "$1" "${1%.mkv}.mp4"; unset -f mkvmp4;}; mkvmp4' | 
					
						
							|  |  |  | alias mkv-mp3-folder='for vid in *.mkv; do ffmpeg -i "$vid" -vn -c:a libmp3lame -y "${vid%.mkv}.mp3"; done' | 
					
						
							| 
									
										
										
										
											2021-03-22 20:49:56 +00:00
										 |  |  | alias mkv-mp3='mkvmp3(){ ffmpeg -i "$1" -vn -c:a libmp3lame -y "${1%.mkv}.mp3"; unset -f mkvmp3;}; mkvmp3' | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | # When you get bored | 
					
						
							|  |  |  | alias telnet-starwars='telnet towel.blinkenlights.nl' | 
					
						
							|  |  |  | alias nethack-online='ssh nethack@nethack.alt.org ; clear' | 
					
						
							|  |  |  | alias tron-online='ssh sshtron.zachlatta.com ; clear' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # My IP Info | 
					
						
							| 
									
										
										
										
											2021-05-11 22:35:08 +00:00
										 |  |  | alias myip='MYIP=$(curl -s https://ipecho.net/plain; echo) && curl https://ipinfo.io/"$MYIP" && echo' | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | alias ports-in-use='sudo lsof -i -P -n | grep LISTEN' | 
					
						
							|  |  |  | # Mis typed whois | 
					
						
							|  |  |  | alias whosi='whois' | 
					
						
							|  |  |  | alias gti='git' | 
					
						
							|  |  |  | alias dc='cd' | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-03-03 17:17:39 +00:00
										 |  |  | # Custom | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | alias untar='tar xvf' | 
					
						
							| 
									
										
										
										
											2021-03-03 17:17:39 +00:00
										 |  |  | alias nano='vim' | 
					
						
							|  |  |  | alias nanoo='/usr/bin/nano' | 
					
						
							| 
									
										
										
										
											2021-03-04 21:00:58 +00:00
										 |  |  | alias svim='sudo vim' | 
					
						
							| 
									
										
										
										
											2021-03-09 23:00:34 +00:00
										 |  |  | alias del='shred -f -n 30 -z -u -v' | 
					
						
							| 
									
										
										
										
											2021-04-28 22:09:23 +00:00
										 |  |  | alias del-quick='shred -f -n 3 -z -u -v' | 
					
						
							| 
									
										
										
										
											2021-03-09 23:00:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | #amass | 
					
						
							|  |  |  | alias amass-subdomain='domain(){ amass enum -passive -d "$1" >> /opt/amass-scans/"$1".txt; unset -f domain;}; domain' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #SAV Command | 
					
						
							|  |  |  | alias sav-start='sudo service sav-protect start' | 
					
						
							|  |  |  | alias sav-stop='sudo service sav-protect stop' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # wget Shortcuts | 
					
						
							|  |  |  | alias get-nordserverlist="wget https://downloads.nordcdn.com/configs/archives/servers/ovpn.zip" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-20 21:47:49 +00:00
										 |  |  | # Hack the Box | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-24 14:57:06 +00:00
										 |  |  | alias htb-vpn-starting_point='sudo openvpn ~/htb/vpn/starting_point_NCLtech.ovpn' | 
					
						
							|  |  |  | alias htb-vpn-lab='sudo openvpn ~/htb/vpn/lab_NCLtech.ovpn' | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-24 15:27:17 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | # nmap-basic | 
					
						
							|  |  |  | function nmap-basic() { | 
					
						
							|  |  |  |   if [ -d "./nmap" ];then | 
					
						
							|  |  |  | 			sudo nmap -sC -sV -oA ./nmap/$1 $2 -v | 
					
						
							|  |  |  | 	else | 
					
						
							|  |  |  | 			mkdir ./nmap | 
					
						
							|  |  |  | 			sudo nmap -sC -sV -oA ./nmap/$1 $2 -v | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # nmap-basic | 
					
						
							|  |  |  | function nmap-allports() { | 
					
						
							|  |  |  |   if [ -d "./nmap" ];then | 
					
						
							|  |  |  | 			sudo nmap -p- -oA "./nmap/$1-allports" $2 -v | 
					
						
							|  |  |  | 	else | 
					
						
							|  |  |  | 			mkdir ./nmap | 
					
						
							|  |  |  | 			sudo nmap -p- -oA "./nmap/$1-allports" $2 -v | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | # Make Life Easier | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | alias wireshark-pfsense="sudo su -c 'wireshark -k -i <(ssh root@192.168.0.3 -p 2222 tcpdump -i lagg0 -U -w - )'" | 
					
						
							| 
									
										
										
										
											2021-01-29 18:18:07 +00:00
										 |  |  | alias wireshark-pfsense-lab="sudo su -c 'wireshark -k -i <(ssh root@10.74.85.11 -p 2222 tcpdump -i xn0 host not 192.168.120.27 -U -w - )'" | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-22 16:18:18 +00:00
										 |  |  | # Git Functions | 
					
						
							|  |  |  | function gpm() { | 
					
						
							|  |  |  |   if [ "$(grep -c "[branch "master"]" .git/config )" -gt 0 ]; then | 
					
						
							|  |  |  |    git push origin master | 
					
						
							|  |  |  |   elif [ "$(grep -c "[branch "main"]" .git/config )" -gt 0 ]; then | 
					
						
							|  |  |  |    git push origin main | 
					
						
							|  |  |  |   else | 
					
						
							|  |  |  |    echo "fatal: not a git repository (or any of the parent directories): .git" | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function gac() { | 
					
						
							| 
									
										
										
										
											2021-01-22 17:07:12 +00:00
										 |  |  | if [ -d ".git" ]; then | 
					
						
							| 
									
										
										
										
											2021-01-22 16:18:18 +00:00
										 |  |  | echo "Log Message: " | 
					
						
							|  |  |  | read logmessage | 
					
						
							| 
									
										
										
										
											2021-01-25 15:28:01 +00:00
										 |  |  | git add --all && git commit --allow-empty-message -m "$logmessage" | 
					
						
							| 
									
										
										
										
											2021-01-22 17:07:12 +00:00
										 |  |  | else | 
					
						
							|  |  |  | echo "No .git Folder found in Directory. Are you in the Correct Folder?" | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2021-01-22 16:18:18 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-22 17:07:12 +00:00
										 |  |  | # Pull all Git repos in this dir | 
					
						
							|  |  |  | function pullall() { | 
					
						
							| 
									
										
										
										
											2021-01-22 19:03:15 +00:00
										 |  |  |   for dir in * ; do | 
					
						
							| 
									
										
										
										
											2021-01-22 17:07:12 +00:00
										 |  |  |     # Execute in subshell | 
					
						
							|  |  |  |     ( | 
					
						
							|  |  |  |       cd "$dir" || exit 1 | 
					
						
							|  |  |  |       # If it's a git directory, then update it | 
					
						
							| 
									
										
										
										
											2021-01-22 19:03:15 +00:00
										 |  |  |        if test -d .git; then | 
					
						
							| 
									
										
										
										
											2021-01-25 15:28:01 +00:00
										 |  |  | 	# Check if its Master or Main | 
					
						
							|  |  |  |         if [ "$(grep -c -i ""master"" .git/config )" -gt 0 ]; then | 
					
						
							|  |  |  |          echo "$dir is a Git repo. Pulling master branch..." && git checkout master && git pull && echo "" | 
					
						
							| 
									
										
										
										
											2021-01-22 19:03:15 +00:00
										 |  |  |         | 
					
						
							| 
									
										
										
										
											2021-01-25 15:28:01 +00:00
										 |  |  |       elif [ "$(grep -c -i ""main"" .git/config )" -gt 0 ]; then | 
					
						
							|  |  |  |         echo "$dir is a Git repo. Pulling main branch..." && git checkout main && git pull && echo "" | 
					
						
							| 
									
										
										
										
											2021-01-22 19:03:15 +00:00
										 |  |  |                fi | 
					
						
							| 
									
										
										
										
											2021-01-22 17:07:12 +00:00
										 |  |  |       else | 
					
						
							|  |  |  |         echo "$dir is not a Git repo." && echo "" | 
					
						
							|  |  |  |       fi | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2021-01-22 19:03:15 +00:00
										 |  |  |  done | 
					
						
							| 
									
										
										
										
											2021-01-22 17:07:12 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | # Updates packages from all sources | 
					
						
							|  |  |  | function update() { | 
					
						
							| 
									
										
										
										
											2021-01-25 15:28:01 +00:00
										 |  |  | sudo -v | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2021-02-22 17:38:56 +00:00
										 |  |  |    # if command -v snap >/dev/null; then | 
					
						
							|  |  |  |    # echo "Updating Snaps..." | 
					
						
							|  |  |  |    # sudo snap refresh | 
					
						
							|  |  |  |     if [[ -f "/usr/local/bin/snap" ]];then | 
					
						
							|  |  |  | 	    echo "Updating Snaps..." | 
					
						
							|  |  |  | 	    sudo snap refresh | 
					
						
							|  |  |  | 	else | 
					
						
							| 
									
										
										
										
											2021-03-22 15:45:12 +00:00
										 |  |  | 	 echo "No Snap Found" | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  |   fi | 
					
						
							| 
									
										
										
										
											2021-03-04 14:05:43 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if [ "$(grep -c "parrot" /etc/os-release)" -gt 0 ]; then | 
					
						
							|  |  |  |     echo "Updating Apt Packages..." | 
					
						
							|  |  |  |     	  if [ -d "/opt/sophos-av" ];then | 
					
						
							|  |  |  |     	    sudo service sav-protect stop >> /dev/null | 
					
						
							| 
									
										
										
										
											2021-05-20 11:40:41 +00:00
										 |  |  |     	    sudo parrot-upgrade -y && sudo apt full-upgrade -y | 
					
						
							| 
									
										
										
										
											2021-03-04 14:05:43 +00:00
										 |  |  |     	    sudo service sav-protect start >> /dev/null | 
					
						
							|  |  |  |     	else  | 
					
						
							| 
									
										
										
										
											2021-05-20 11:40:41 +00:00
										 |  |  |     	   sudo parrot-upgrade -y && sudo apt full-upgrade -y | 
					
						
							| 
									
										
										
										
											2021-03-04 14:05:43 +00:00
										 |  |  | 	 | 
					
						
							|  |  |  |   fi | 
					
						
							| 
									
										
										
										
											2021-03-22 15:45:12 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | elif [ "$(grep -c "kali" /etc/os-release)" -gt 0 ]; then | 
					
						
							|  |  |  |     echo "Updating Apt Packages..." | 
					
						
							|  |  |  |     	  if [ -d "/opt/sophos-av" ];then | 
					
						
							|  |  |  |     	    sudo service sav-protect stop >> /dev/null | 
					
						
							|  |  |  |     	    sudo apt update && sudo apt --autoremove full-upgrade -y | 
					
						
							|  |  |  |     	    sudo service sav-protect start >> /dev/null | 
					
						
							|  |  |  |     	else  | 
					
						
							|  |  |  |     	    sudo apt update && sudo apt --autoremove full-upgrade -y	 | 
					
						
							|  |  |  |   fi | 
					
						
							| 
									
										
										
										
											2021-03-04 14:05:43 +00:00
										 |  |  |   | 
					
						
							|  |  |  | elif [ "$(grep -c "debian" /etc/os-release)" -gt 0 ]; then | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  |     echo "Updating Apt Packages..." | 
					
						
							| 
									
										
										
										
											2021-02-22 17:38:56 +00:00
										 |  |  |     	  if [ -d "/opt/sophos-av" ];then | 
					
						
							|  |  |  |     	    sudo service sav-protect stop >> /dev/null | 
					
						
							| 
									
										
										
										
											2021-05-20 11:40:41 +00:00
										 |  |  |     	    sudo apt clean && sudo apt update && sudo apt full-upgrade -y | 
					
						
							| 
									
										
										
										
											2021-02-22 17:38:56 +00:00
										 |  |  |     	    sudo service sav-protect start >> /dev/null | 
					
						
							|  |  |  |     	else  | 
					
						
							| 
									
										
										
										
											2021-05-20 11:40:41 +00:00
										 |  |  |     	    sudo apt clean && sudo apt update && sudo apt full-upgrade -y	 | 
					
						
							| 
									
										
										
										
											2021-02-22 17:38:56 +00:00
										 |  |  |   fi | 
					
						
							|  |  |  |   | 
					
						
							|  |  |  | elif [ "$(grep -c "arch" /etc/os-release)" -gt 0 ]; then | 
					
						
							|  |  |  |       echo "Updating Pacman Packages" | 
					
						
							|  |  |  |           if [ -d "/opt/sophos-av" ];then | 
					
						
							| 
									
										
										
										
											2021-03-22 15:45:12 +00:00
										 |  |  | 	         sudo service sav-protect stop >> /dev/null | 
					
						
							|  |  |  | 	         sudo pacman -Syy -y $$ && sudo -v && sudo pacman -Syu -y && sudo pacman --noconfirm -R $(pacman -Qdtq) | 
					
						
							|  |  |  | 	         sudo service sav-protect start >> /dev/null | 
					
						
							|  |  |  | 	    else  | 
					
						
							|  |  |  | 	       pacmanorphan=$(sudo pacman -Qdt) | 
					
						
							| 
									
										
										
										
											2021-03-22 16:06:17 +00:00
										 |  |  | 	       sudo pacman -Syy -y && sudo -v && sudo pacman -Syu -y && sudo pacman --noconfirm -R $(pacman -Qdtq) | 
					
						
							| 
									
										
										
										
											2021-02-22 17:38:56 +00:00
										 |  |  |   fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-22 14:57:58 +00:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2021-01-22 15:33:20 +00:00
										 |  |  |     echo "No apt or pacman found. I guess you're out of luck" | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-03-17 18:22:18 +00:00
										 |  |  | pfdecrypt() { | 
					
						
							|  |  |  | cat "$1" | sed -e '1d' -e '$d' | base64 -d | openssl enc -d -aes-256-cbc -md md5 -out "$2" -k "$3" | 
					
						
							| 
									
										
										
										
											2021-03-17 18:09:34 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-17 17:45:32 +00:00
										 |  |  | # set a fancy prompt (non-color, unless we know we "want" color) | 
					
						
							|  |  |  | case "$TERM" in | 
					
						
							|  |  |  |     xterm-color) color_prompt=yes;; | 
					
						
							|  |  |  | esac | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # uncomment for a colored prompt, if the terminal has the capability; turned | 
					
						
							|  |  |  | # off by default to not distract the user: the focus in a terminal window | 
					
						
							|  |  |  | # should be on the output of commands, not on the prompt | 
					
						
							|  |  |  | force_color_prompt=yes | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [ -n "$force_color_prompt" ]; then | 
					
						
							|  |  |  |     if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then | 
					
						
							|  |  |  | 	# We have color support; assume it's compliant with Ecma-48 | 
					
						
							|  |  |  | 	# (ISO/IEC-6429). (Lack of such support is extremely rare, and such | 
					
						
							|  |  |  | 	# a case would tend to support setf rather than setaf.) | 
					
						
							|  |  |  | 	color_prompt=yes | 
					
						
							|  |  |  |     else | 
					
						
							|  |  |  | 	color_prompt= | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [ "$color_prompt" = yes ]; then | 
					
						
							|  |  |  |     PS1="\[\033[0;31m\]\342\224\214\342\224\200\$([[ \$? != 0 ]] && echo \"[\[\033[0;31m\]\342\234\227\[\033[0;37m\]]\342\224\200\")[$(if [[ ${EUID} == 0 ]]; then echo '\[\033[01;31m\]root\[\033[01;33m\]@\[\033[01;96m\]\h'; else echo '\[\033[0;39m\]\u\[\033[01;33m\]@\[\033[01;96m\]\h'; fi)\[\033[0;31m\]]\342\224\200[\[\033[0;32m\]\w\[\033[0;31m\]]\n\[\033[0;31m\]\342\224\224\342\224\200\342\224\200\342\225\274 \[\033[0m\]\[\e[01;33m\]\\$\[\e[0m\]" | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |     PS1='┌──[\u@\h]─[\w]\n└──╼ \卌\n' | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Set 'man' colors | 
					
						
							|  |  |  | if [ "$color_prompt" = yes ]; then | 
					
						
							|  |  |  | 	man() { | 
					
						
							|  |  |  | 	env \
 | 
					
						
							|  |  |  | 	LESS_TERMCAP_mb=$'\e[01;31m' \
 | 
					
						
							|  |  |  | 	LESS_TERMCAP_md=$'\e[01;31m' \
 | 
					
						
							|  |  |  | 	LESS_TERMCAP_me=$'\e[0m' \
 | 
					
						
							|  |  |  | 	LESS_TERMCAP_se=$'\e[0m' \
 | 
					
						
							|  |  |  | 	LESS_TERMCAP_so=$'\e[01;44;33m' \
 | 
					
						
							|  |  |  | 	LESS_TERMCAP_ue=$'\e[0m' \
 | 
					
						
							|  |  |  | 	LESS_TERMCAP_us=$'\e[01;32m' \
 | 
					
						
							|  |  |  | 	man "$@" | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | unset color_prompt force_color_prompt | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # If this is an xterm set the title to user@host:dir | 
					
						
							|  |  |  | case "$TERM" in | 
					
						
							|  |  |  | xterm*|rxvt*) | 
					
						
							|  |  |  |     PS1="\[\033[0;31m\]\342\224\214\342\224\200\$([[ \$? != 0 ]] && echo \"[\[\033[0;31m\]\342\234\227\[\033[0;37m\]]\342\224\200\")[$(if [[ ${EUID} == 0 ]]; then echo '\[\033[01;31m\]root\[\033[01;33m\]@\[\033[01;96m\]\h'; else echo '\[\033[0;39m\]\u\[\033[01;33m\]@\[\033[01;96m\]\h'; fi)\[\033[0;31m\]]\342\224\200[\[\033[0;32m\]\w\[\033[0;31m\]]\n\[\033[0;31m\]\342\224\224\342\224\200\342\224\200\342\225\274 \[\033[0m\]\[\e[01;33m\]\\$\[\e[0m\]" | 
					
						
							|  |  |  |     ;; | 
					
						
							|  |  |  | *) | 
					
						
							|  |  |  |     ;; | 
					
						
							|  |  |  | esac | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # enable color support of ls and also add handy aliases | 
					
						
							|  |  |  | if [ -x /usr/bin/dircolors ]; then | 
					
						
							|  |  |  |     test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" | 
					
						
							|  |  |  |     alias ls='ls --color=auto' | 
					
						
							|  |  |  |     alias dir='dir --color=auto' | 
					
						
							|  |  |  |     alias vdir='vdir --color=auto' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     alias grep='grep --color=auto' | 
					
						
							|  |  |  |     alias fgrep='fgrep --color=auto' | 
					
						
							|  |  |  |     alias egrep='egrep --color=auto' | 
					
						
							|  |  |  | fi |