found%=FALSEhashValue%=Hash(typeName$)IF TMessage_LookForHash(hashValue%)=self.NOT_VALID%// Not found, so add this hash to the listloop.typeName$=typeName$loop.hashValue%=hashValue%DIMPUSH self.typeList[],loopSORTARRAY self.typeList[],0RETURN hashValue%ELSERETURN self.NOT_VALID%ENDIFENDFUNCTION

//! Send a message to the destination type, using its registered name. This could be very slowFUNCTION TMessage_SendMessage_Text%:fromHash%,toType$,data$LOCAL fromIndex%,toIndex%LOCAL message AS tMessage