/\*\s*
 \*\s*\$Id.*\$
 \*\s*
 \*\s*Copyright \d{4}(-\d{4}|,\d{4})* The Apache Software Foundation\.
 \*\s*
 \*\s*Licensed under the Apache License, Version 2\.0 \(the "License"\);
 \*\s*you may not use this file except in compliance with the License\.
 \*\s*You may obtain a copy of the License at
 \*\s*
 \*\s*http://www\.apache\.org/licenses/LICENSE\-2\.0
 \*\s*
 \*\s*Unless required by applicable law or agreed to in writing, software
 \*\s*distributed under the License is distributed on an "AS IS" BASIS,
 \*\s*WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.
 \*\s*See the License for the specific language governing permissions and
 \*\s*limitations under the License\.
 \*/\s*
