CREATE [ OR REPLACE ] PROCEDURE [ schema. ] procedure
   [ (argument [ { IN | OUT | IN OUT } ]
               [ NOCOPY ]
               datatype [ DEFAULT expr ]
       [, argument [ { IN | OUT | IN OUT } ]
                   [ NOCOPY ]
                   datatype [ DEFAULT expr ]
       ]...
     )
   ]
   [ invoker_rights_clause ]
   { IS | AS }
   { pl/sql_subprogram_body | call_spec | EXTERNAL} ;