I'm relatively new to Argument registers, but I noticed you use one in calling a vision command i.e.
VISION RUN_FIND AR[1]
VISION GET_PASSFAIL AR[1]
Does anyone know how this will function? I'm curious because I'm used to simply calling out the 'STRINGNAME' to run a vision command. I think this would greatly increase modularity and reduce coding time.