Gavin Holtzapple
Software Engineer at Cape, with previous experience at Stripe, Coinbase, Walmart, and others.
B.S. in Computer Science from Arizona State University (2021-2025).
My daily work involves solving distrubuted systems problems and creating telecom services in golang, such as a mobile core.

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--------:-------:------------------------------------------------------------------------------------------------------------------------------------==================== ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::------::-----------------------------------------------------------------------------------------------------------------------------=============== :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--::------------------------------------+#+=---+-------------------------------------------------------------------======== ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-----:---------------------=%%%+=#*++=--------------------------------------------------------------------==== ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::----------------==*%%#%@@@#=----------------------------------------------------------------------== ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::---=+#%#+#%%%%%##=------------------------------------------------------------------------ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-=*#%%%%#%#*%%%%#*+---------------------------------------------------------------------- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-+####++#%%%#%%@%%%*--------------------------------------------------------------------- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-++-+%%%%%@@%*##%@%*=--------------------------------------------------------------------- :::::...:.:::::.:::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-*##*##%%%@@%*=#*-:::::::::::::-------------------------------------------------------- ................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-=-**+%@@%%*=:=+-:::::::::::::::::++=---=--------------------------------------------- ..........................:..............:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-+=+%%%#*=-+---*-::::::::---:--=*%%***=+**+----------------------------------------- ......................................::....:.::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-%%+:-*-:==-:-:::::::::::=#%%%%%%%#%%@#+=---------------------------------------- ................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::---::::::::::::::::::::::::::::-**-=*+-+--+=::::::::::-++#%%%#%%##%@%**+--------------------------------------- ......................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--::::-*%+-----::::::::::::::::::::::::::-#=:---+*=-::::::::::-=+=++++*%#*++**+=--::::::-------------------------------- ................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::=+::::*@@*::::::::::::::::::::::::::::::::::++::-*##=::::::::::=*++*#=-=#%%##%%#=--:::::::::::::-------------------------- ...............................................................................:....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-=:::::::::::::::::::::::::::::::::::::::::::=#-=++*-:-+*=::::::::---+++###%@@%%%#+-::::::::::::::::----------------------- ........................................................................................::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-*+-::+==+#=:::::::::-=##%%+*%%%%%%##*=:::::::::::::::::::::------------------ ..................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*#=-=*+=--::::::::::-##**=-*%@%#%%*=-:::::::::::::::::::::::::::---------==== ............................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-#-::-*::::::::::::::==::::*#%%==+--:::::::::::::::::::::::::--=+**++++++*### ................................................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*+::-+:::::::::::::::::::-*%%#-::::::::::::::::::::::-::=*++**#%%@@%%%####%% .........................................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::-#-::+-::::::::::::::::::::=#-:::::::::::::::::::-==++**+*###%%%@@@@%######% ........................................................................................................................::::::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::...::::::::::::::::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::*+::=-:::::::::::::::::::::#-:::::::::::::::+#%%#**#####%#%%%%%%########%%% ...........................................................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........................:::::::::::::......:::::..........:::::::::::::::::::::::::::::::::::::::::::-#-:=-:::::::::::::::::::::*=::::::::::-+*###%%#**##%%%%@@##########%%%%%%% ..................................................................................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.........::::::...:::::::::::::::::........:::::...........::::::::::::....:::::::::::::::::::::::::::::*#:=-:::::::::::::::::::::=+::::::++:+%%%%%###*###%%###%%#######%#%%%%%%%% ................................................................................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::..........::::.............::::::::::........:::::::::::::::::::::::::::-#===:::::::..::::::::::::-*::::*#%%%%%%%%##**########%#%%######%%@@@%%%%@ ..............................................................................................................................................................................::....::::::::::::::::::::::::::::::::::::::::.......::::::::::::::::::::::::::...........::::...........:::::::::::.......::.:::::::::::::::.....:::...:+#==:::::::..:::::::::::::+-::=#%%%%%%%##########%#%%%%##%####%%@@@@@@%%% ...........................................................................................................................................................................:::........::::::.......::......::::...:::::.............:::::::::::::::::::::::.............:::.....................:-+--::::::::::::::::.::...............:#*=:::::::::::::::::::::-++--=*#**###############%%%%%%%%%%%%#%@@@@@%#%@ ............................................................................................................................................................................................:.......................................::.....::::::::::::::::.............:............................:::::::::::.......................:+#+::::::::::::::::::=+-****##**#%%%%#####%@%%%%%@@@@%%%@##%@@%%%%%@@@@@ ..........................................................................................................................................................................................................................................:::::::::::::::::.....::..............................:::....::::::::::.......................:##:::::::::::::::-+-*##%##%***##%%##%#%%@@@@@@@@@@@@@%@@@%@@@@##%%%@@@@ ..........................................................................................................................................................................................................................................::::::::::::::::::::::::.....................................:::::::::....................:::::+#-::::::::------=*#*#####%**##*###%%%%@@@@@@@@@@@@@@@@@@%#%@#*#%%%%%%% .......................................................................................................................................................................................................................................:::::::::::::::::::::::::::......................................:::::::.....................:::::-#=:::::::-==+=+=-=***####***###%%%@@%@@@@@@@@@@@@@@@@%%%%@%*+++***#@@@ .........................................................................................................................................................................................................................................:::::::::::::::::::::..:.......................................::::.........................:::::+*::::::--+***###**############%@@@@@@%@@@@@@@@@@@@%%%####+++*##*+###+ ............................................................................................................................................................................................................................................:::::::::::::::::::............................................:....................::::::::::=#-:::-=*####%#####%%#####%###%%%@@@@@@@%#%%@@@@@@%###%%#*++*##**#%### ...................................................................................................................................................................................................................................................::::...........................................................................:::::::::**:-=+***###%%%%@%%#**#####%%%@@@@@%%%##%%%%@@%%%###%%#####*#+#*#@@#* ..................................................................................................................................................................................................................................................................................................................................:::::::::+#*+***####%%@@@%####%%%%%%%%@%%%@%%%%@@@@%%%%%%#%%###%%%%@@@##*%%%#% .................................................................................................................................................................................................................................................................................................................................:::::::-+++*##*#%%%%#%%@@@%*#%%%@@@@@@@@@@%%@@@%%@%%%%##%%@@%%%%%%@@@@@%%@@@@%# .................................................................................................................................................:*@@%%#+=:.....................................................................................................................................................................::-=++++**###%%%%%%%@%%%%%#*##%%%%@%@@@@@@@@@@@@@@@@%##%%%%%%@@@@@@@%@@@@@@@@@@% ..............................................................................................................................:*%##+:...........-%@@@#-::--+#*=.............................................................................................................................................................:::::=+**##*+##%%%@@@@%%@@@%##**#%%%#%%%@@@@@@@@@@@@%%%%###%%%%%@@@@@@@@@@@@@@@@@@@% ....................................................................................::::......................................*@@@*::-*%=.....:%@@@*:........:-:............................................................................................................................................................:---=*******#%%#%%%%%###%@%***#%%%%@%%###%@@@@@@%###%%#######%%@%%@@%@@@@@@@@@%%%@@@ ..............................................................................::::::::::......................................+%#:....-#@@%==%@@@+:........................................................................................................................................................................:-+*******##**##%#%%%%%%%@%%*#%%#%##%%#*+#%%%#%%%#%%%#%%%%%#%@%%%##%%@@@@@@@@@@@@@@@@ ...........................................................................:::::::::::::.......................................::...:+++@@@@@@@%-........................................................................................................................................................................::=++*****#####%%%%##%%%%@%%%#**################%%%%%%%%#%%%%%%##%%##%%%%@@@@@@%@@@@@@@ ........................................................................::....:::::::::..................................................-*%@@@@%*:................::::.................................................................................................................................................:-=+**#***##%####%##*#%%@@@@@%#*#******#####%#%%%%#%%#####%#%@%%@%##%%*#%%@%%@%%%%%%%%@@ ..................................................................................................................................................................:::::::............................................................................................................................................:.:-=+**#*+**#%%##***######%%%#*****+****#######%%%%%%%%%%%%%%%@@@@@%#%%@#+*##%%%@@@@@##%%% .............................................................................................................................................................:::::::::::::......................................:...................................................................................................:-=+*+******#***+**#%%%%%%%@%%#*+**+***###**##%%%%@%%%@@@@@@@@@@@@@@@@@@@@%+*#%%@@@@@%%##%%@ ............................................................................................................................................................:::::::::::::::::................................:.................................................................................................:::=****+******++++*##%%%@@@@%%%@@#*###*#**+**%#*###%%%%@@@@@@@@@@@@@@@@@@@@@@%@#*%%%@@@%%%%%@@@@ .........................................................................................................................................................:.::::.:.:::::.:::::...:............................................................................................................................::-+**++*******++**##%@@@@@@%%%%%@@@%%%@@@@%#**########%%%@@@@@@%@@@@@@@@@@@@%%%%%%%%@@@@@%%###%%%% .........................................................................................................................................................::....:.....::.....:.::.......................................................................................................................:---==+*#*#**#**++***###%%%%@@@@@@@@@@@@@@@@@@@%%#%####%%%##*##%@#**#%#%%@@@@@@%%@%%@%%%@@@%##%%@@%%%@@@@ ....................................................................................................................................................................................................::.............................................................................................-:-+**++*****####*****#%##%@%@@@@@@@@@@@@@@@@@@@@%%%%%##########*********##*#%%%@#####%%%@@%%%%%%@@@%%%%%@%%% ...........................................................................................................................................................................................................................................:::::::::::::::..................................=-:..-+++++***###%#%%%%%%#*#%%%%%@@@%@@@@@@@@@@@@@@%%##%*##%###%%%#**+=+*####*#*######%####*#%%%%%##***#*###%%%@@@%@ ....................................................................................................................................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........:.:.::=*==+++*#*#####%%%%%%%%%%*##%#%%%@@@%%%@@@@@@@@@@%%%#######%%###*+==*#%@@@%%%%%%@@%%%%%%%%#*#*###%%#%%%%%%%%%@%%@%@ ...........................................................................................................................................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-*++#********#*##%%%%%%%%%%@@@%##%%%%@@@@%@@@@@@@@@@@@@@%%%%%%%%%%#*==+*#%@@@@@@@@@@@@@@@@@@@@@@%@%#%%%%%%@%##%#%%@@@@@@@ ............................................................................................................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-=*#**+++++*+****#%%%%%%%@%%%%%%%*##%%%@@%@@@@@@@@@@@@@@@@%%%%%%%%#+++*%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%####%%%%%%%%@@@@@%@@ ..............................................................................................................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-+****+*++*#*##%#%%%%%%%%%@%%%%%%%%##%%%%%@@%%%%@@@@@@@%%%%%%%%#*+*#%%@@@@@@@@@@@@@@@@@@@@@@%#%##%@%@%########%#%@@@@@@@@%#* ...............................................................................................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--=+***#############%%%%%%%%%%%%%%@%%%%%##%%%%%@%%%@@@@@@@%%%%%%%#*+*#%%@@@@@@@@@@@@@@@@@@@@@@@%%@@@@%###%#########%%%%%@%%%@%@@@ .........................................................................................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-=**###%##%%%%%%%%%##*####%%%%%%%%%%%%%%%%%%%%####%%%%%%%%%@@@%%%%%%#*+*#%%%%@%%@@@@@%%%%%%%%%%@%%%%%%@@@@%%###%%#######%%@@%%%@@@@@@@@ .................................................................................................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--++*##%%#%%%%%%%%%%%%%%%%%%#%%%%%%%%%%%%%%%%%%%%%%%%#%####%#@@%%%%%%%%%#+*#%%@@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%####%%%###%%%@@@@@@@@@@@%%@ ......................................................................................................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::::-+*#*####**####%%#%%####%##%%%##****#%%%%%%%%%%%%%%%%%%%%%#**%%###%%#@@%@%#++#%%%@@@%%%%%#%%%%%%%%%%%%%%@@@%%%@@@@@@@%#####%%%##%%@@@@@@@@@%@%@@@ ...................................................................................:::::::..:::::::::::....:::..:::.:..::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--::::--::::::-++****##%##**###########%%%%%%%#**###%%%%%%%%%%%%%%%%%%%%%%%##%%%#%%%@%@@%*+#%%%%%%%%%####%%%%%%%%%%%%%%@@@@%%@@@@@@@@@@%#*+*#%%%#%%%@@@@@@@@@@@@@ .......................................................................::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-----=-----------+#%###%%######*####*#*#%%%#**####%#%####**#%%%%%%%%%%%%%%%%%%########%%%%@*++#%@%%%%%%%%#%#%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@%##########%%%@@@@@@@@@@@@@ :::::::::::::::::::.................................................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::----::-------==========+*#%%#####%######**#%%%%#%%#*####%##**###%%##%%%#%%%%%%@%%%%%%%###%#%##%%%%#+*#%%%%%%##%%%%##%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@%#%##%###%@%@@@@@@@@@@@@@@ ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::---:----=====--===========----=*#%%#%%#############%%%%%%%###########%%%#%#%%%%%####%%%%%%%%%%%%%#**%%%%%%@%#%%%%%##%##%%%%##%%%%%%@%@%%%@@@@@@@@@@@@@@@@@@@%######%#%%%@@@@@@@@@%@@@@ ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::..:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-----===========================+##%%%#############*#%##%%%%%%##%##%%%##########%%%%#%%%%%%%%%%%%###%%%%%%@%%@%####*####%%%%#%%%%%%%%%%@%@@@@@@@@@@@@@@@@@@@@@%%%#***####%%@@@@@@%##*#%# :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:::---==-:-====================-----===##%%###############%#%#%######%###############%#%%%%%%%%%%%%%%###%%#%%%%#%%%%%%@#**#####%%%%%%%%%%%@@%%@@@@@@%@@@@@@@%@@@@@@@@%#####*#*+**##%%##*+*%#** ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::---:::-::-----====++=++=-=++===---==+++*##########%%%%#**##%##%%%%%%#############%#%%%%#%%%%%%%%%%###############%%%@%#*#**###%%%%%%%%%%%%@@@@@@@%%@@@@@@@@@@@@@@@@#*******#%%%%%##******### :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-----::::::::::::::::::::::::::::::---::::::-::::-:-:-::::--::--::-::----::----::-::::---:::::::::::::::::::::::-::::::---::::-----=+###############++**###%%%%###############%%%%%%%%%%%%%%%%%#*+***#########%%%@@%%*+*###%%%%%%%@@%%%@@@@@@@@@@@@@@%%@@@@@@@@@#**#%#*##%###*****#*####* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-::::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::::::::::::::=#################*=*######################%%%#%%%%%%%%%%%%%%%###*###########%@@@%%####*#%%%%%%%@@@%@@%@@@%@@@@@@@@@%@@@%@%%#****#%*******##+##*+**#### ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::::::::::::::::::::::::::::-:-----::::::::::::---:::--===-------::.:::::::::::::=#####*+**#######*#****################%####%%%%%%%%%%%%%%%%%%%##############%%%@@%###**##%%%%%@@%%%%%%%%@@@@@%@@@@@@@@%%%%#****#****#%*%@@%##*#####%%% ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--::-::---:::::::::::::::::::::::::::::::+#######**+*#######****######%################%#%%%%%%%%%%%%#######%%%%#####%%%%%%%%###*###%%%%%%%%%%%%#%%%%@@@@@@@@@@@@%%%%#******##%%%@%#**#*####**#* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-::::::::::::::-:::--::::::-::::::-:--::::::::::::::::::::::::::::-:::-:::::::::::::::::::::::--:::::::::::::=*####*#++=+**#*###**+*####%#####%#%%%########%%%%%%%%%%%%%#######*###%%###%%%%%%%%%%%####*#%%%%%%@%%%%%%@%@@@%%%%@%%%%%@@%***##%%%##%@***+#**##***#*++ ::::::::::.:::::::::::::::::::::-::::::::::::::::::::::::::::::::::::--:::::::::::::-::--:::::::::::::::::::::::::::::::::::::::::::::::-::::::::::::::::-:::::::::::::::::::--::::::-::-::::::::::::::-:::::::-::-:::--:::::::::--::-------:-------------+*####**+++#######**+=****######%####%########%%%%%#%%%%%%#####*****###%%%%%%%%%%%%%%###*#%%%%%%%%%@%%%@@@@%@@%%@@@%%%%%%%%*#%%##***++**+*#%@%#**+++*# :::::::::..:::::::.::.:::::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::::::::::::::::::::::--:::::::::::::::::::::::::::::::-::::---:::::::::::-:::::---::----------------------:::-------=--------------------------------::-+*####*+++**##*#*#**++*+**###%%#%#############%%%%%##%%%#######*****####%#%%%%%%%%%%######%%%%%%%%%%%%%@@@@%%%@%%%@%%@%@@%#****++++++**#**%##*++****## ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::::::::::::::::::-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::-:--::::------::::-:------::-::---------:::::::-:::::-----:-::::-+######++++****#****+=++==*#######%%###############%%%%###########****####%%%%%%%%%%#####%%%%%%%%%%###%%@@@@%%%%@%%%%%@@#*###*#*++**+*#*+***++***#+*** ---::::::::::::::::-:::::::::::::::::--------:::::::::::::::::-::::--:::::::::::::::::--::::---::::::-:-:-----------------:--::::::::::::----:::-:::::::::::::::::::::::-:--::------:-:::::----------:::::::-:----------:--::-:--:--:::::::::::::::::::::-=+####*=+*********+++==+#+########%###############################***#######%%%%#########%%%%%%%%%%%%@@@@@%%%%%%%%@%%%%%#%%*#%*+****+++++=*####++****+ :::::::::::::::::::::::-:::::::::::::::::::::::::--:-:::-::::::-:---::-----::::::----:::----:---:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-------::::::::-::::::::::::::::::::::::::::::::::-:::::::::::::::::::::::::::::::::::::::::-*#####*+=*#*******+++-=+*#####*#############################################%%%#######%###%%%%%%%%%@%%*++++#%%%%@%@@@@######**+++++++++++***+++**#*+** --:::::::--:::::::::::::-::-:::::::::::::--:::::::::::::::::::::--:-::::::----::::::::::::::----::::::-:::::::::::::::::::::::-::::::::--::::::::-::::::::::::::::::::---------:::----:::::---::::-:::::::::::::::::::::::::::-----------:-:---::::::::::-+**###+++******##*++=-++*####################################################%#*######%%%###%%%%%%%#*+*##*****##%@@@@%*####%%****+******##*+**##*+++*# :::::::::-::::::::::::::::::::::::::::::::::::::::::::::::::--:::--::::::::::::::--:::::::::::::::::::::-:::::::::::::::::::::::::::::::::---::-:--::::::::::::::::::::::::::::--:::::-:::-----::::::::-:::-----::---::.:::::::::---::::::::::::::::::::::=**#***=+*###*****+++-=**####%#%%%%#####################################################%%%%%%%##**#######***#%#%@@@@%**##*%*+*+****#*+****###******** :::::--::::::::::::::::::::::.:::::::::.:::::::::::::::.::::::::::::::::::::::::::::::-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::---:--=------:-::::-:--:----::::----:::::-----:----------:::::........::::::::::::::::::.............:=*#******###***++*+=---=**##############################################################%%###*%%%####*#%#*####%@@@@@@#**++++++*#####*++*+#########**++ :::::..::::::::::::::::::::::::::::::::::::::::::::::::::::-::::::::::::::::::::::--::::::::---:::::::::::::-:::::::::::::::::::::::::::::::::::::::----::--------------------::-::::::::---::-:::::::....::............::......::::.:::::::::............:+##***+=******+===-=--:-+*#*##***############################**#########%%##############%%%%%%%#*%%#*######%%@@@@@%#++++++**######*+*#*#***+*****+*** :.::..::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:::::::::::::::::::::::::::::::::::::::::::::-::---:::::-----::::::--:::::..........................................::....:::::::.:::::::.::::.::::::=#**=*+=-+**+===--=-----****#*+*#######***###################*******####%%%%#########%%%%%%%%%%%%%%%%%###%@@@@%#***++****####**#*###***+++++******** :---:::::::::::::::...::.....:::::::::::::-::::::.:::::..:::::::::::::::::::::::::::::::::::.:::::::::::::::...:::::::::::::.::::::::::::::.:::....:::.::........:::..::::..:..........................:.....................::.....::::::-----:::::::::::::::=**+=--=+*==========-==+*****######*#*#####*###############**********##%%%%##########%%%#%%%%##%@%%##%%@@@%%*****+**######**#%%#***+*+*#***+**+**# :::...::-:::....::::::::--::::::::::::::::::::::::::::::::::::::::::::::.:::::::::.:::::.:::::::::::::::.:::::::::::::................................:::::::::::::..............................................................::...::-::::::::::............=**=--=++==*+++*++++++-=**########**#*####################**********####%###*###########%%%%%%%%%%%@@@@@%*+****##***#***###***+**##*####*++****## :-----::::::::::::::::::::::::::::::::::::...::::::::::::::::...::::::::.::.:::::----::::::::::.:::::::::::::::::::::..................................:...::...::...............................................................:::............................=*==+++-=++++****++*+-=******####*###**###############**#*********#######**#############%%@@@@%%%@@@@%#++**#****+++=+****#++**##%%%#*****####%#% -::.:::.....:::::-:--:::::..::.:::::.:::::::::::::::::.::.::::::::::::::::::::::::::-::::::::.............:...................::::........::::::::::::.....::....................................................................::::...........:::::...........:==+*=--+*++#*****+++-=+#**#*#########**#################********###********#############%@@@%%%%%%#++**********=--==+++++***####%#*+####%##%%@% .::...:::::....::...:::::::...:.:::::::::::.::..:::.:::::::::::::::::::::::::::::::::::::.....::.:::::::.:.::::::--:::::::::::::::::::::::::-------:::::...............................................:...................:::::::::-:::::......................:==+===****#***+***+==+*#*######**#######################*#***#####********#############%@@@@%%%#++*******#***=++*******####%**###***#%%%%#**%%% .::::....:::::::::::...:.::::::::::::::::::::::::::::::::::..::::::::::---:::::--=====---=-::::---==========-=---============-----:::::::::-------------:::::...........................................:::...................::::::::::.....:::::::::...........---+-+*******++++++==+**#################################****#*****#****##############%%@%%%%#****#*******+++******####*###*+**++++*****#**+*#% :.....:::.:...:::::::::::::::::.:::==++=-:==-==+====-====--=+++++*+*++++===:-====++==++=======++++++===++=+++=========+++======----=----::-----------------:::..............................................::::::::.:...........................................-=--=+******++**+++-:=**###*##**#############################**#**#**#**############%%%%%%%*****+*+***#**+*####***##**#*##*#*++===**+*%#%%#%%%% ::::::::::---:::::::.:::::::::-==++===+++*+++=++==+++=+++++===++============+++===========---========+==++++++=+++++++++++++++++++=++=-:------========------:::...:..............:::::::........:::::.:............::::::.......................................-====+*#*****++***+--=*######***################**############***#######*###############**+**#**+*#*****########*#########*==+++*+*++++*##%*###% :--:::::-==--=--:=-:::---:::-===+=+++++++==-==----=====-----=----=-=--=+++++++=====+++=====++=====+++++++++**++++*++++++++++++++++++++++======+=+++========---:::::...::::::....::::::::::....:::-----:::::::::::::..:.........................................:-==-=*#*****+***++=-=:-=######################################**##########*###*##****##+**########*++*##%########***#%%#+=+###*++*++%##*##%#%%%% ::------=-----=======+====-====-:---===--------===-::-----====+=-=+==++++++++++====----==++++++++++=+++++++++***++******+++++=+=+====+=++***************++====-----::::::::::::::::------::::::::::::.......::::::..............:.....................-........-----+**#******+=+=-=::=*################################**####***#########**##**#++**%#*###**###%#**########%#***#*#%%##+***+++==+=**##%#%%%%%%% ***+=-===--==---=--::::--:::--=+=+++=++=++++=+*+++++****++=+++++++*++++++===--==--=++*++=----+++=++====---====++=======+======+=========++***********+++++++==-------==--------:::-----::...:::::::::::::.:::..::::...::::::::::-+*##+::::.....::-***###*.....----=**#*******++=----=-=#######################%%######****#############**###%###++####***+++*******%%######****########**###*---=++**%%%%%%%%%%% -----==---------:-------:.:---------=++=++==++***+++++++==============-=---==========-==+======-------------------=-======================+++++++==------:::::::::::...:::::::::::::::::::.....:..........:.:........:::..::-***#######**=:.....:+###%%%##=..==+==*###**+++++----==:--*##############################**###############*###%#**##**###++++****#******####****##*#*#****+=+-------==*%%%%%%%%%%%%@ =++++==---========+==-:----=======--:---====--=========------======----:::::-::::::--:-----=-=-----::::::::::-----::::::::-----:-::::::::------------:::::::::..........................................................-=+*##*##############*#**#*##%%%%#=:=---=+*###**+=+=---=+--:-+**############################**#########*##########%#****+*###**+*########++*****###****###*#**+=-++===+######%%%%%%%%%%@ =-----------------:--::---==-------:-----::::-:---===---:::------:----::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..............................................................:-==+*+*#*################***+#**#*++##**==-=++*##**+=====-+*#=:--+***###########################***#########**########%#*###+++#%#*+****######++**+*#######*##****+++++*###%%##%%####%%%%@%%@ ::---=-::::::-::::--::::::::::::::::::::::::::::::::::::::::::::::::........:::::::::::......::::::::::::......:::...................................................................................=+:::..-##**+=*++**-=*##########*#*######**#*#####**+==-=++*###*+==*==+=++=-::=**##############################*######**#***######%%%#**%#+**#**###=+**########*+--**+++*****+=*+##++*###%#%%###*#%%%%@@@@% ::::::::::--------::::::-:::--:--:--:=***=::::::::::::::::::::--:::::::::::::::..:::::::::::::.........................:.........................................................................:===-==-=---==++**#++=+#**##*##*+**##########*+=*+=+#*#*===+++++**+++====+++-----=**###########################*########***######%%%%%%##*##%#+*++*#%####**++*########+++++-=+++**##*#%#*###%%########%#%%@%%%@ :::-----:----::::::::::::::::::::::+##%%%=.::......:..:.::.:..::::::::::::::::::::::::........................................................................................................:--+*++==+==--=++=+*#*+++##**#*+=++****++*+++#***++===###*===+*+++*+*+*==+=+===-=+-==+*##########################*#####*###*#**#####%#####**###%%%**##########***##%%%####+=+=+++#####*###*#%%%#%%####%%%%%%%%@%%% ==--=---:::::.:::::::-::::::..:-%%%%#%%%+:::..:::::---:.....::.::...................:..::..::...:..::...::::::::::::..:..::::::::............:...................................=+*+*#%#=:.:+=+=+=*::-+*##%+**#*##**##=+***+++**###*+******-==-=+*+++====+*+=++=+*+=++**#+--===+==*#**#################################*****#########***#%%%##%%%#*###%#####**+####******==**##%#######%#####%%%%%%#%%%%%%%*%%@ ===----::::-::::::::---::::::+*%%%%%%%%%+::.::::::::::---:::::......:::::::.::::::........::-:::::::::....:::::::.....:::::::::.................................................+**#%%#*=+######*=+=#%%%#%#*###%+++--+++**##+**+=++++=======+**+++==+====++=-====++++==+++==+===+===*###################################*****#######*****#%%##%%%%%%#*##***#*#***=+*******+++**#######*#%#%%######%%%%%%%%%##%%% ---::::.:::-:::::-+*#%%%*=--=+**%%%%%%%%%%%%%#+::::..::--:::.....:::::..:.......:::::::.:::::::::::--:::::::::::::::::::::::::::...........::....................:=+-.:..-=:=++=*+*%%%*-==**###+-:+##**#%#+*+==*+===*#*****+++*++++==++=+==============+++=====++++==+++=-=====+*++*####################################**##########****#%%###%%%%%%*++*****#####*++++****=-=++=+*##################%%%%%%%##%%% --:::::.......:+#%%%%%%%%%%#*++==*#%%%%%%%%%%%%#-.:+##%%%%#-:::...............::::::.::..:.::::::::::::::::::::::::::::::::::::::::::.:..::::..................:=*##*+*###*%#*#+=+*##%%%%%#%%%*--=#%%####***#******+++**++++=========+====-----=------=+===-+==++++++++=-++=+**+++**#################################*#**##########****########%%%%#**+#***########++==++++=*+==+#####%%%%%%#######%%%%##%%%%%%% :::::::-*+**+#%%%%%%%%%%%%%%%%%%##**#%%%%%%%%%###*=+++=-::.........................................::::::::::::.......::::::.:.......:::::.........:.:::-*#***#%%%#*#%%####*+***********#*###***+***#***+++*++++***+=**=-----===---::::--::::--=*+--:--:----==-===+*====*==++**+++*####################################*#########*#**#########%%%%%*##***##########*=-==-==----=*#%@@@@@@@@@@@@####%%######%%%%% -=***+*+#%%%%%%*=+*#%%####*########***#######*+=-::............:::...:::.........::....:....:::...........................--*##=---=+=+*++++*+=*******+*#***#%%%%##*#**#######**************++*+**+++*++=+++=+++#*+==---::-:-------::-=--==-::::-===========--==+++==*+===++#*+++*#############################################***#*#########%%%%#**##**#*##########+-=-*+==-===++##%%%%%%%%%@@@%#%###########%% :::::-===----+=:.::::::::....:::--::..::::::::...............:....::::......:::....:::.........................:......:+*+*#%#++********++=+*#%%#**#######***##***##+##*#*+#*****++++++====*+=++===++++*+=-----:--:::-:::::---::-------==---=+#***+**+++*###**+=++*++++=+*###++*+*###################################*#######****###%#######%%#**=+**++++**#*+****##++++===+-==+****######%%%%%%%@%##*####%##### ....:--=++++*+::::---::-::::::..::...........:::::..................::::::::...:....:....::::..........::::.::::*%#++****#**++*****+*++++##%%***##%%****+*###*#%#%###*++++++=**+===----====+++*++#*++#+----------:::::::::-=---:-----+==+*######*++=++****++=**#*+*+*++****+:**+###########################################***++*#########*+=-=--=======--+*==++++****+==-====++**+**#**#%%%%%%%%%%####*######## ::-**++++==-:::........::...........................:............................................:===+####**++=+##*#*#*+=++*+++***+#%*#**#+*#%%#*#*#%#########%####**#%#*+***++=====--====+--------====--------------------=======+++*###**+===***#**+==+++*##****+=+*#*+++++##*#######****#***###########################***++*#*****+*+==--========+*=:-+==++++*++#**+-=++-=++++++*+*####%%%%%%%%########%%%%# .::........:........:...........................:::...........................................:+*%##**++**+++==***#**++=+**===++-=+****++*#%#+*+**##*######*++*++*++++*++++***#*##*+++++++*#*###*++***+****##***++*******+++==-====+===+++++####****+**#***#####*+++***+*==*#**#######################**+++**+++****####*+==+++++#*+++++-=-========--==--==+==++**#++=======--==+=++++######%%%###%%#####*####%% .................::.................:......::..:.......................::..................:=+=++*+=***+#+#*=+*=+==+=+*+#*++=====+=*++**=+#+***#*+***+++++=--=+*+***%#*#*#**#****#*****#%%%%%%%%%%#*###+##****#%#*+==**+=++====+***#############**#*+****##%###++###++++++****###########**#**####+*+---++=:::-=-===-=+==*##***+====--=+==+=+++====+==----==+---======--====--====+++*#*#**####*###%%%%######%%% ..............:::::..:..:::............::::....................................:........:-*#*++-=++#+===+++=+=+*%*++##%####*+++*+==-=+++**++=+++*+*++++***+++**###*#%##****************%#%%%%%%%%#**++++=+++=+++====+==+**##%##**########%%%%############***##**##*#++++**++##########*+*#**###*=======-==-:-*##+=+=+=+*####*+======+++=====+###+====++==-==-==--=+============+=-==####+*%##+=**###########+*%% .......::::.:....::................:..............................................:-#++#*=*%%%#%#%%%*=+*#%%#*###**%%%##%%%%%*##**%#*++++++++=++++++****#####*#%%%%##*******+++**###%%%%%%%##***+====--=*#*+=++++**##****#%%%#########%#####*#***#****************++++*+++*##########**++*****+++*++=+=-==*#**++=++*=++*++========++==+=-=-=+++++++==+++==+++===-=+#*=====--========*##***##*+==++++=++++*##*++## ......::::.....................:.......................................-##===+=-::=#%%%%#*%%%%%%%%%%##%%%%%%%#*###%###%%%##*##%#*#+++++****+**+*#######*###%#*%%%%%%##%%#%%%%###%%%%%###+*++*++++++++**+#++*##%#%%#*########%%%%%##%###%%%########*+===--:---------=-=**########**++=+*###*=====----=+++==*#*+=+++*++++*++++===+====-=-:-=+++++++++=++*=+==-=====++=-==+====-==+==+***+=#***-+=*=++=+=++***+=*** .............::............::.....................................::-+**##%%%%%%%#%%%%%##%%%@%%%%%%#%%%%%%%%%%#+**#%%%%%#****+++++****+##**###%%%*#%%####****###%%%%%%%%%%#%%%%%%##***++**+*+=****+*##**###%%%###%%%%%%#%%#########**+=::--:::::::::--::----::-:::::-::::::::::::::::-==-===--==-=+**+=+*+==++*+===**+==-==++++*+++*+==+==+=+**=+%*+*#%#+===+=--=+==-=--------=====+*+++*====++*=+=+**+=+++==*** ::..:.............::..........................:-==+=..........:-==++++*%%##%###%%%%#*#%%%%%%%%%%%%%%%%%%%%%%%#**####%%%#+*****##++++*#*##*###%%%%%%%###****#%#%%%%%%#%%%##*#%%%%#*******+**###*####%##%%%%%%%%%##**+*+=-=--::-:------:::::::::::::::-:-::::::-:::::::::::::::::::::::::::-------=*****+*===+++++++===---==*+***####+=+++++++++==+*+--==----:--=======*#+==========++=+*+==-==**+*++*++=++===++++ .............................................:+*#%%*##*=...:-==++****###*%%*%#%#**#%%%%%%%%%%%%%%%%%%%%%%%%%%##*####***+**++*+**#***######%#%%%%%%%*+**#%#%%%%%%%%%%%%###**##*++++*#+*#%%%%%##*#%#%%%%%%%%%%%%#*#+-::::-----::--:-:::--::::-:::::::--:::::::::::::::::::::::::::::::::::::::::::-===+++++*+=+++++*+--===+***#%%#++=====+++*++*+===::::::::::::--=*+*#*+====-====+**+==--+===+++*#***#+==++++++++ ................................:::---:.....-*#%%%%%%%%%#*#*=+*#%%%%%%%%%%%#%#*#%%%%%%%%%%%%%%%%%%%%%%%%%%%%#*+++***+++**++**####**+#%%%%%***#%%%%%+#%%%%%%%%%%%%%%%%#*#********+**#%%##**#%%%%%%%%%%%#%%%%#*****-::::::-:-:::--::---:-::::::::::-:::--::::::::::::::::::::::::::::::::::::::::::=-:-=*+==++=+++*+==+=+**#%##*++++++===+++----:::::::::::::::::---++++*#*=====++=+=++*+=+==+=**++++======+++*+== .............................:::::-===:.:-=*%%%%%%%##*++*##%%#%%%%%##%%%%%%%%%%%%%%%%%%%%%%%%%%%####*###*#+++**++*+**++**#**##%#*%%%%%%###%%%%%%%%##%%%%%%%%%%%%%%%#*#%***#**##**#%#*****#%%%%%%###%%%%%%%%##**=-:::::::::::-::--=-:---:::::::::::::::::-::::::::::=-::::::::::::::::::::::::::::::::---=-:=-+++++=*#****+=-=++*+==+=-:::::::::::::::-:::::::::::::::::::::--==+=+++=-==+**+++=+=++++++=++++==++ ............................::::----====#%%%%%%%%%#%**+*+=+***+*+***++*#%%%%%%%%%%%%%%%%###%#%%#********++++**++*+=+**#****##*#%%%%%%%%#%%%%%%%%%%%%%%%%%%%%%%%%%%####******#%%%#*##*####%%%%%%%%%%%%%#+=-::==::-:::::::::::-::----::::::::---::-:::::::::::::::::-+*=::::::::::::::::::::::::::::::::::::::---::-+*+*+++=++*%%#=***+=:::::::::::::::::::::::::::::::::::--=-==++=+++==+++++*#+++*##*++====+++++ ...................................::====+++*#++*++****+**++*#####%####%#%%%%%%#*++###*##++*#####*+*#++++++**#*+#######*#####%%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#*#%#*%%%%%%%%%%%%%%%%%%%%%#*++===+=::::::::::::::::::::::::::---:::::::::::-:::::::::::::::::::::=*=::::::::::::::::::::::::::::::::::::::::::::::::::-*#%%%%#*-:::::::::::::::::::::::::::::::::::-----:-:--===+*+++=+++***+##*+===++*#**++= .............:...::::............::=**++=++======--====+##**####**#####%#***#***#*++****++********++*++#%%%##**##+**+*%%%####%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%#%%%%%%%%%%%%%###*=-::::::::-=++++++**==**=::::::::::::::::---::::::::::::::::::::::::::::::::::-+*+:::::::::::::::::::::::::::::::::::::::::::::::::-*##*++=-:::::::::::::::::::::::-=-::::::::-=-=+++++=++=++++++++***++=--+*==*#**+++++== .:::::...................:::::::-=*#*++++===-----==-===+#*##*#%#*#***++=++**##**#*++*#%###%%%%%%%%%%%%%%%%%%%%%%###**##*#####%%%%%%%%%%%%%%%%%%%%%%%%%%%###%%%%%%%%%%%%%%%%*=-::::::::::--===++++*++++==+=++==++=::::::::::::---::::::::::::::::::-::::::::::::::::::::++==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-======++++=+++****+=-:::::----==+=++***++======= :...............:::::::--::::=*#%####**+**=+=========-==*####*+==+===+***#%#**#%##%%%%%#%%%%%%%%%%%%%%%%%%%##%%#*##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#*####%%%%%%%%%%%%%%%%#+-*==-::--==+++=======+=++++**###+***=+=-=-:::::::-=-:::::::::-:::::::::::-::::::---::::::::::-+=:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::---==========--=++-:::::::---====--======--=-==-==== ::......:.........:---:::..-#%%%%%%%##*#+==**+*+++*%*+*%%%%%*++-=+*##%%%%%%#%%%%%#*#%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+**%%%%%%%%%%%%%%%%#+--:::::-+**++**++++++++++++*###%##%%%%%#*::--=-:=--=+-===-:-=--:-:---::::::::--::::::::-=-:::--::::::+*+:::::::::::::::::::::-:::::::::::::::::::::::::::::::::::::::::::::::::::::-=+-===++++**=-:::::::-----=-==--====++=----:::-----:---- :.::::--:----:::::::::::-+*###%%%%%%%%#+****#+==+==+*#%%%%%%##%%%%%%%%##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%%%%%%%%%%%%#####***++++****######***##********#%%%%%%%%%%#+::::-:::::::::::==-:::-:-:::-:::::::::::::::-:::::---::::::::::=*+::::::::::::::::::::::::::::::-=+=+**==-::::::::::::::::::::::::::::::--===*###+=+==---===--:--::::::::-:::::::::::::::::::::------
Professional Experience
Industry
Rockwell Automation
Intern • Fall 2023 / Spring 2024 • 7 Months
Adding testing suites to FactoryTalk software
Academic
Arizona State University
Executive Teaching Assistant • 2022 - 2025 • 3 years
Gave lectures, created educational content, and guided lab sessions for CS students of all levels.
Managed ~25 Teaching Assistants per semester.
Writing

Predictions: 2026-2036
February 2026
Predictions for what industries will succeed over the next decade, & how AI will mature.

Claude Code is the Best Doctor I Never Had
January 2026
How Claude Code can help patients understand themselves

How I built a 5G Core
January 2026
Potentially saving companies millions with a pet project

My Advice to Incoming College Freshmen
January 2025
4 pieces of advice from a college senior to incoming freshmen.

Why CS Majors Can't Get Jobs
January 2025
The new standard for computer science students is to make things.



