Recently i had a discussion with a customer how to use preupgrd.sql which is per default installed in $ORACLE_HOME/rdbms/admin. The right answer is, don`t use this SQL Script.
If you want to upgrade a database to 18.104.22.168 you should use the most recent version of preupgrd.sql which is avaible from MOS Note: How to Download and Run Oracle’s Database Pre-Upgrade Utility (Doc ID 884522.1)
But also if you want to upgrade your database to a lower version like 22.214.171.124 you should check this MOS Note. The Note provides the pre upgrade scripts for older version also.