IN is the parameter mode that passes a value FROM the calling environment INTO the procedure. It's read-only within the procedure. OUT passes values from procedure back to caller. IN OUT allows both directions. VARCHAR2 and BOOLEAN are data types, not parameter modes.