diff --git a/.github/workflows/deploy_docs.yml b/.github/workflows/deploy_docs.yml index ca467e8065..f0ae94c485 100644 --- a/.github/workflows/deploy_docs.yml +++ b/.github/workflows/deploy_docs.yml @@ -27,8 +27,8 @@ jobs: - name: Create mkdocs_requirements.txt run: | - echo "mkdocs==0.17.5" >> mkdocs_requirements.txt - echo "mkdocs-unidata==1.5.7" >> mkdocs_requirements.txt + echo "mkdocs" >> mkdocs_requirements.txt + echo "mkdocs-unidata" >> mkdocs_requirements.txt echo "fontawesome_markdown" >> mkdocs_requirements.txt - name: Get pip cache dir diff --git a/.github/workflows/update_NDM.yml b/.github/workflows/update_NDM.yml new file mode 100644 index 0000000000..0d98046fa3 --- /dev/null +++ b/.github/workflows/update_NDM.yml @@ -0,0 +1,38 @@ +name: update station info + +on: + workflow_dispatch: + schedule: + - cron: "0 6 * * *" + +jobs: + update_ndm: + runs-on: ubuntu-latest + environment: + name: VLAB + steps: + # Checkout this repo + # this gets the latest code (and is run on the default branch) + - name: Checkout awips2 + uses: actions/checkout@v3 + # Do individual pulls for all the files in the ndm directory + - name: Pull latest from vlab svn repo + run: | + cd rpms/awips2.edex/Installer.edex/ndm/ + for file in *; do + svn export --force https://vlab.noaa.gov/svn/awips-ndm/trunk/"$file" --username ${{ secrets.VLAB_UNAME }} --password ${{ secrets.VLAB_PASS }} + done + # Check in all the new files + # Only do a git add/commit/push if files have changed + - name: Update existing NDM files for awips2 repo + run: | + date=`date +%Y%m%d-%H:%M:%S` + git config user.name $GITHUB_ACTOR + git config user.email $GITHUB_ACTOR@users.noreply.github.com + change=`git diff` + if [[ ! -z "$change" ]] + then + git add --all + git commit -m "New NDM updates on $date - autogenerated" + git push + fi diff --git a/awips_install.sh b/awips_install.sh index d035f64f3c..5e7a57c9b1 100755 --- a/awips_install.sh +++ b/awips_install.sh @@ -1,4 +1,4 @@ -#!/bin/bash -f +#!/bin/bash # about: AWIPS install manager # devorg: Unidata Program Center # author: Michael James @@ -159,54 +159,158 @@ function check_remove_edex { done } -function remove_edex { - while true; do - read -p "`echo $'\n'`We want to back up some configuration files. What location do you want your files backed up to? - If you choose not to back up files (you will lose all your configurations) type \"no\"`echo $'\n> '`" backup_dir +function calcLogSpace { + a=("$@") + logDiskspace=0 + for path in "${a[@]}" ; do + if [ -d $path ] || [ -f $path ]; then + out=`du -sk $path | cut -f1` + logDiskspace=$((logDiskspace + $out)) + fi + done + logDiskspace=$(echo "scale=8;$logDiskspace*.000000953674316" | bc) +} - backup_dir=$(echo $backup_dir | tr '[:upper:]' '[:lower:]') - if [ $backup_dir = "no" ] || [ $backup_dir = "n" ]; then +function calcConfigSpace { + a=("$@") + configDiskspace=0 + for path in "${a[@]}" ; do + if [ -d $path ] || [ -f $path ]; then + out=`du -sk $path | cut -f1` + configDiskspace=$((configDiskspace + $out)) + fi + done + configDiskspace=$(echo "scale=8;$configDiskspace*.000000953674316" | bc) +} + +function backupLogs { + a=("$@") + log_backup_dir=${backup_dir}/awips2_backup_${ver}_${date}/logs + + if [[ ! -d ${log_backup_dir} ]]; then + mkdir -p ${log_backup_dir} + fi + echo "Backing up to $log_backup_dir" + for path in "${a[@]}" ; do + if [ -d $path ] || [ -f $path ]; then + rsync -apR $path $log_backup_dir + fi + done +} + +function backupConfigs { + + a=("$@") + config_backup_dir=${backup_dir}/awips2_backup_${ver}_${date}/configs + + if [[ ! -d $config_backup_dir ]]; then + mkdir -p $config_backup_dir + fi + echo "Backing up to $config_backup_dir" + for path in "${a[@]}" ; do + if [ -d $path ] || [ -f $path ]; then + rsync -apR $path $config_backup_dir + fi + done +} + +function remove_edex { + logPaths=("/awips2/edex/logs" "/awips2/httpd_pypies/var/log/httpd/" "/awips2/database/data/pg_log/" "/awips2/qpid/log/" "/awips2/ldm/logs/") + configPaths=("/awips2/database/data/pg_hba*conf" "/awips2/edex/data/utility" "/awips2/edex/bin" "/awips2/ldm/etc" "/awips2/ldm/dev" "/awips2/edex/conf" "/awips2/edex/etc" "/usr/bin/edex" "/etc/init*d/edexServiceList" "/var/spool/cron/awips") + + while true; do + read -p "`echo $'\n'`Please make a selction for what you would like backed up. If you choose not to back up files you will lose all your configurations: +1. logs +2. configs +3. both logs and configs +4. none +`echo $'\n> '`" backup_ans + +#User chooses to back of files + if [[ $backup_ans =~ [1-3] ]]; then + echo "ANSWER: $backup_ans" + while true; do + read -p "`echo $'\n'`What location do you want your files backed up to? `echo $'\n> '`" backup_dir + + if [ ! -d $backup_dir ]; then + echo "$backup_dir does not exist, enter a path that exists" + else + #Check to see if user has enough space to backup + backupspace=`df -k --output=avail "$backup_dir" | tail -n1` + backupspace=$(echo "scale=8;$backupspace*.000000953674316" | bc) + date=$(date +'%Y%m%d-%H:%M:%S') + + echo "Checking to see which version of AWIPS is installed..." + rpm=`rpm -qa | grep awips2-[12]` + IFS='-' str=(${rpm}) + IFS=. str2=(${str[2]}) + vers="${str[1]}-${str2[0]}" + ver="${vers//[.]/-}" + + if [ $backup_ans = 1 ]; then + calcLogSpace "${logPaths[@]}" + #Don't let user backup data if there isn't enough space + if (( $(echo "$logDiskspace > $backupspace" | bc ) )); then + printf "You do not have enough disk space to backup this data to $backup_dir. You only have %.2f GB free and need %.2f GB.\n" $backupspace $logDiskspace + #Backup logs + else + backupLogs "${logPaths[@]}" + printf "%.2f GB of logs were backed up to $backup_dir \n" "$logDiskspace" + fi + elif [ $backup_ans = 2 ]; then + calcConfigSpace "${configPaths[@]}" + #Don't let user backup data if there isn't enough space + if (( $(echo "$configDiskspace > $backupspace" | bc ) )); then + printf "You do not have enough disk space to backup this data to $backup_dir. You only have %.2f GB free and need %.2f GB.\n" $backupspace $configDiskspace + #Backup logs + else + backupConfigs "${configPaths[@]}" + printf "%.2f GB of configs were backed up to $backup_dir \n" "$configDiskspace" + fi + elif [ $backup_ans = 3 ]; then + calcLogSpace "${logPaths[@]}" + calcConfigSpace "${configPaths[@]}" + configLogDiskspace=$( echo "$logDiskspace+$configDiskspace" | bc) + #Don't let user backup data if there isn't enough space + if (( $(echo "$configLogDiskspace > $backupspace" | bc ) )); then + printf "You do not have enough disk space to backup this data to $backup_dir . You only have %.2f GB free and need %.2f GB.\n" $backupspace $configLogDiskspace + #Backup logs + else + backupLogs "${logPaths[@]}" + backupConfigs "${configPaths[@]}" + printf "%.2f GB of logs and configs were backed up to $backup_dir \n" "$configLogDiskspace" + fi + fi + break + fi + done + break +#User chooses not to back up any files + elif [ $backup_ans = 4 ]; then while true; do - read -p "`echo $'\n'`Are you sure you don't want to back up any AWIPS configuraiton files? Type \"yes\" to confirm or \"quit\" to exit` echo $'\n> '`" answer + read -p "`echo $'\n'`Are you sure you don't want to back up any AWIPS configuration or log files? Type \"yes\" to confirm, \"no\" to select a different backup option, or \"quit\" to exit` echo $'\n> '`" answer answer=$(echo $answer | tr '[:upper:]' '[:lower:]') if [ $answer = yes ] || [ $answer = y ]; then break 2 ; elif [ $answer = quit ] || [ $answer = q ]; then exit; - else - echo "Please answer \"yes\" to confirm you don't want to back up any AWIPS configuraiton files or type \"quit\" to exit" + elif [ $answer = no ] || [ $answer = n ]; then + break fi done - elif [ ! -d $backup_dir ]; then - echo "$backup_dir does not exist, enter a path that exists" - - else - date=$(date +'%Y%m%d-%H:%M:%S') - backup_dir=${backup_dir}/awips2_backup_${date} - echo "Backing up to $backup_dir" - - if [ ! -d $backup_dir ]; then - mkdir -p $backup_dir - fi - rsync -aP /awips2/database/data/pg_hba.conf $backup_dir/ - rsync -aP /awips2/edex/data/utility $backup_dir/ - rsync -aP /awips2/edex/bin $backup_dir/ - if [ ! -d $backup_dir/ldm ]; then - mkdir -p $backup_dir/ldm - fi - rsync -aP /awips2/ldm/etc $backup_dir/ldm/ - rsync -aP /awips2/ldm/dev $backup_dir/ldm/ - rsync -aP /awips2/dev $backup_dir/ - rsync -aP /awips2/edex/conf $backup_dir/ - rsync -aP /awips2/edex/etc $backup_dir/ - rsync -aP /awips2/edex/logs $backup_dir/ - rsync -aP /usr/bin/edex $backup_dir/ - rsync -aP /etc/init.d/edexServiceList $backup_dir/init.d/ - rsync -aP /var/spool/cron/awips $backup_dir/ - break; +#User did not make a valid selection + else + echo "Please make a valid selection (1, 2, 3, or 4)" fi done + FILE="/opt/bin/logarchival/edex_upgrade.pl" + + if test -f "$FILE"; then + echo "Running /opt/bin/logarchival/edex_upgrade.pl and logging to /home/awips/crons/logarchival/general" + /opt/bin/logarchival/edex_upgrade.pl >> /home/awips/crons/logarchival/general + fi + if [[ $(rpm -qa | grep awips2-cave) ]]; then echo "CAVE is also installed, now removing EDEX and CAVE" pkill cave.sh @@ -235,7 +339,8 @@ function remove_edex { ex. yum groups mark remove 'AWIPS EDEX Server'" exit else - for dir in $(ls /awips2/); do + awips2_dirs=("data" "database" "data_store" "edex" "hdf5" "httpd_pypies" "java" "ldm" "postgres" "psql" "pypies" "python" "qpid" "tmp" "tools" "yajsw") + for dir in ${awips2_dirs[@]}; do if [ $dir != dev ] && [ $dir != cave ] ; then echo "Removing /awips2/$dir" rm -rf /awips2/$dir @@ -281,36 +386,49 @@ function cave_prep { rm -rf /home/awips/caveData } +function cleanup { + sed -i 's/enabled=1/enabled=0/' /etc/yum.repos.d/awips2.repo + if $alterReg; then + sed -i 's/@LDM_PORT@/388/' /awips2/ldm/etc/registry.xml + fi + if $disableNDM; then + disable_ndm_update + fi + echo "$k has finished installing, the install log can be found in /tmp/awips-install.log" +} + if [ $# -eq 0 ]; then key="-h" else key="$1" fi + +disableNDM=true +alterReg=true + case $key in --cave) cave_prep yum groupinstall awips2-cave -y 2>&1 | tee -a /tmp/awips-install.log - echo "CAVE has finished installing, the install log can be found in /tmp/awips-install.log" + alterReg=false + disableNDM=false + k="CAVE" ;; --server|--edex) server_prep yum groupinstall awips2-server -y 2>&1 | tee -a /tmp/awips-install.log - sed -i 's/@LDM_PORT@/388/' /awips2/ldm/etc/registry.xml - echo "EDEX server has finished installing, the install log can be found in /tmp/awips-install.log" + disableNDM=false + k="EDEX server" ;; --database) server_prep yum groupinstall awips2-database -y 2>&1 | tee -a /tmp/awips-install.log - disable_ndm_update - sed -i 's/@LDM_PORT@/388/' /awips2/ldm/etc/registry.xml - echo "EDEX database has finished installing, the install log can be found in /tmp/awips-install.log" + k="EDEX database" ;; --ingest) server_prep yum groupinstall awips2-ingest -y 2>&1 | tee -a /tmp/awips-install.log - disable_ndm_update - sed -i 's/@LDM_PORT@/388/' /awips2/ldm/etc/registry.xml - echo "EDEX ingest has finished installing, the install log can be found in /tmp/awips-install.log" + k="EDEX ingest" ;; -h|--help) echo -e $usage @@ -318,6 +436,8 @@ case $key in ;; esac +cleanup + PATH=$PATH:/awips2/edex/bin/ exit diff --git a/build/buildEnvironment.sh b/build/buildEnvironment.sh index 53fe2ee5b8..812130fa99 100755 --- a/build/buildEnvironment.sh +++ b/build/buildEnvironment.sh @@ -1,7 +1,7 @@ #!/bin/bash # Version export AWIPSII_VERSION="18.2.1" -export AWIPSII_RELEASE="5" +export AWIPSII_RELEASE="6" # Author export AWIPSII_BUILD_VENDOR="UCAR" export AWIPSII_BUILD_SITE="Unidata" diff --git a/cave/com.raytheon.uf.viz.d2d.ui.upperair/localization/menus/upperair/index.xml b/cave/com.raytheon.uf.viz.d2d.ui.upperair/localization/menus/upperair/index.xml index 215d639ff4..0e5dc43b30 100644 --- a/cave/com.raytheon.uf.viz.d2d.ui.upperair/localization/menus/upperair/index.xml +++ b/cave/com.raytheon.uf.viz.d2d.ui.upperair/localization/menus/upperair/index.xml @@ -26,5 +26,6 @@ + diff --git a/cave/com.raytheon.uf.viz.d2d.ui/icons/warngen.gif b/cave/com.raytheon.uf.viz.d2d.ui/icons/warngen.gif new file mode 100644 index 0000000000..6a471056c2 Binary files /dev/null and b/cave/com.raytheon.uf.viz.d2d.ui/icons/warngen.gif differ diff --git a/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml b/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml index b4b892373a..5dfeb123b2 100644 --- a/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml +++ b/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml @@ -559,25 +559,27 @@ + + + + + + + + + + + + - - - - - - - - - - * @@ -74,6 +78,8 @@ public class ValidTimeAndTimeResolutionDialog extends private List vTimeList; private List tResolutionList; + + private ArrayList sortedTimes; /* * Time resolutions in seconds calculated from the intrinsic period for the @@ -121,6 +127,7 @@ public class ValidTimeAndTimeResolutionDialog extends protected void initializeComponents(Shell shell) { Composite mainComp = new Composite(shell, SWT.NONE); mainComp.setLayout(new GridLayout(2, false)); + mainComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Label vTimeLabel = new Label(mainComp, SWT.NONE); vTimeLabel.setText("Valid Time:"); @@ -226,7 +233,7 @@ public class ValidTimeAndTimeResolutionDialog extends config.setForecast(new Long(dt.getFcstTime())); config.setDelta(getSelectedMillisecondsResolution()); - if (cachedAvailableTimes != null && cachedAvailableTimes.length > 0) { + if (cachedAvailableTimes != null && cachedAvailableTimes.length > 0 && sortedTimes==null) { DataTime[] dataTimesArray = TimeMatcher.makeEmptyLoadList( cachedAvailableTimes, calculatePreferredLatestTime(), frameCount, loadMode, config.getForecast(), @@ -246,19 +253,30 @@ public class ValidTimeAndTimeResolutionDialog extends vTimeList.removeAll(); vTimeList.add("Default"); - for (int i = cachedAvailableTimes.length - 1; i >= 0; --i) { - DataTime dataTime = cachedAvailableTimes[i]; + //create a sorted list based on the ref time and then forecast hour + sortedTimes = new ArrayList(); + for(DataTime dtime : cachedAvailableTimes){ + sortedTimes.add(dtime); + } + //use reverse forecast hour because we're going to display these in reverse order + // where the ref time is newest to oldest, and forecast is + DataTimeComparator timeComp = new DataTimeComparator(SortKey.INITIAL_TIME, SortKey.REV_FORECAST_TIME, false); + Collections.sort(sortedTimes, timeComp); + + for(int i=sortedTimes.size()-1; i>-1; i--){ + DataTime dataTime = sortedTimes.get(i); StringBuilder sb = new StringBuilder(); - if (Collections.binarySearch(dataTimesList, dataTime) < 0) { + String hourStr = timeFormatter.getDayTimeForecastHRString(dataTime); + + //for all entries but the 0HR runs, add a preceeding "..." + if(!hourStr.contains(" 0HR")){ sb.append("..."); } if (dataTime.getUtilityFlags().contains(FLAG.FCST_USED)) { - sb.append(timeFormatter - .getDayHourForecastHRString(dataTime)); + sb.append(timeFormatter.getDayHourForecastHRString(dataTime)); } else { - sb.append(timeFormatter - .getDayTimeForecastHRString(dataTime)); + sb.append(hourStr); } vTimeList.add(sb.toString()); } diff --git a/cave/com.raytheon.viz.radar/localization/bundles/DefaultRadarDualPolBaseData.xml b/cave/com.raytheon.viz.radar/localization/bundles/DefaultRadarDualPolBaseData.xml index 93f5b2e63f..89e64595b9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/DefaultRadarDualPolBaseData.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/DefaultRadarDualPolBaseData.xml @@ -440,7 +440,7 @@ diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_eeri.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_eeri.xml index b67ff5d389..f7f7ad22b5 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_eeri.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_eeri.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqkw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqkw.xml index fb4d6efd6a..eff83d5296 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqkw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqkw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqwa.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqwa.xml index 6684300b39..4bdbf66a88 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqwa.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_fqwa.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabr.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabr.xml index a300226c63..dd40db8e1f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabr.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabr.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabx.xml index f9b8a04613..f4cb289b81 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kabx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kakq.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kakq.xml index dab103d304..813f93dad6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kakq.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kakq.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kama.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kama.xml index 36518b4c71..5c81f69c15 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kama.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kama.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kamx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kamx.xml index d3cc637179..fcbea80371 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kamx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kamx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kapx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kapx.xml index d0b4f234b8..1f18b9a59d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kapx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kapx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_karx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_karx.xml index 8eb2d44c5a..de2fe96655 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_karx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_karx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_katx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_katx.xml index ca04c0f697..18ba4f16ea 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_katx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_katx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbbx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbbx.xml index 133e1e474b..a4780f9bfd 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbbx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbbx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbgm.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbgm.xml index b2e0bc9ab0..d2a1e5c98b 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbgm.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbgm.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbhx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbhx.xml index 99fb29057f..c24ac3b20e 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbhx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbhx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbis.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbis.xml index fcb17faa5e..bf6a9a807c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbis.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbis.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbix.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbix.xml index 60250dfc6f..d8dfbbd926 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbix.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbix.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kblx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kblx.xml index a9fa50e9da..4b5063aef9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kblx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kblx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbmx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbmx.xml index 56f29b7869..ef690fec23 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbmx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbmx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbox.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbox.xml index bdaf0af143..03b99a1151 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbox.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbox.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbro.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbro.xml index 2912998a0e..c6737636b6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbro.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbro.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbuf.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbuf.xml index 8494851235..f752b27dc0 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbuf.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbuf.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbyx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbyx.xml index 4a748fb991..0c4b4b505d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbyx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kbyx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcae.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcae.xml index 012956a7a7..a2043db721 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcae.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcae.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbw.xml index 177987072f..a0e5e7dbcf 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbx.xml index 9d08bb3dd7..41122382b8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcbx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kccx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kccx.xml index 568d0828ce..8cd57dc949 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kccx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kccx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcle.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcle.xml index 62f2fe122c..877b3495a0 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcle.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcle.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kclx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kclx.xml index dd989daffa..954dd5b583 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kclx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kclx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcri.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcri.xml index 689606150d..fb20c52ccd 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcri.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcri.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcrp.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcrp.xml index b6ec4331e5..1dd4a7566c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcrp.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcrp.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcxx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcxx.xml index 04eef40186..e83aae53a6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcxx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcxx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcys.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcys.xml index 24b3df8c91..874d34309c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcys.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kcys.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdax.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdax.xml index 30a57ebec5..18f9d54c46 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdax.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdax.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kddc.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kddc.xml index 88a081c3f3..cebc10ebae 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kddc.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kddc.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdfx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdfx.xml index d02ca787d0..53cd153925 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdfx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdfx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdgx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdgx.xml index 0398ec71ae..59066bdf21 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdgx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdgx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdix.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdix.xml index f304ddbe0f..254d153984 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdix.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdix.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdlh.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdlh.xml index 5db552eccf..08cf5be83a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdlh.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdlh.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdmx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdmx.xml index 2bf2f87482..7215c2b10a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdmx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdmx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdox.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdox.xml index 18c49750b3..d16ae8f821 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdox.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdox.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdtx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdtx.xml index 3264f3d659..160861e166 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdtx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdtx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdvn.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdvn.xml index 4c9266e043..c50ce4b531 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdvn.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdvn.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdyx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdyx.xml index 80ab0f14d3..be22de9cab 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdyx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kdyx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keax.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keax.xml index de5f4a3577..56ae1b4bff 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keax.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keax.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kemx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kemx.xml index 8c5b0b9513..7731be810e 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kemx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kemx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kenx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kenx.xml index 63942fb2db..0055009133 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kenx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kenx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keox.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keox.xml index 0cd0f8edeb..37f8c86734 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keox.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keox.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kepz.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kepz.xml index 87d480401b..f9f2c46aa1 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kepz.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kepz.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kesx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kesx.xml index 8310f5ccd4..035e17bd2c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kesx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kesx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kevx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kevx.xml index 050fa88237..56925e7bc4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kevx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kevx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kewx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kewx.xml index 161d641eea..1c46e154b8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kewx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kewx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keyx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keyx.xml index c2ff22e7a0..9298b502f3 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keyx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_keyx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfcx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfcx.xml index ffda7065be..f38f18b41a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfcx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfcx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdr.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdr.xml index 3e1c45e248..dd5d859337 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdr.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdr.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdx.xml index f44a93f54b..7cfac41398 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfdx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kffc.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kffc.xml index 8e975853d5..4fecc49c89 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kffc.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kffc.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsd.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsd.xml index 0f7b2320e6..bf37a8726f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsd.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsd.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsx.xml index 98329004cf..43af2b3513 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfsx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kftg.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kftg.xml index 5de7f08349..4df52a943c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kftg.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kftg.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfws.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfws.xml index b1cff6b080..79796a11b7 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfws.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kfws.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kggw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kggw.xml index 21b722fbb2..21717cab51 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kggw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kggw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgjx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgjx.xml index 54a2489ad5..1dab4380b4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgjx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgjx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgld.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgld.xml index 47e503c119..64c3681a88 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgld.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgld.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrb.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrb.xml index 2f6e52913e..39b866a808 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrb.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrb.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrk.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrk.xml index 3dd349d3fd..ad99e74b43 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrk.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrk.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrr.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrr.xml index a755ce2e4b..61518cc73a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrr.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgrr.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgsp.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgsp.xml index 23db11297c..42763c2a4b 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgsp.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgsp.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgwx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgwx.xml index a3a6f656cb..7b40815e68 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgwx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgwx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgyx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgyx.xml index b5ed4deda5..3ce3bcf0a1 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgyx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kgyx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khdx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khdx.xml index 749a50448c..9a7c170470 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khdx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khdx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khgx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khgx.xml index 17eb70d559..832ee103ce 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khgx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khgx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khnx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khnx.xml index 1b414e68bf..8f8affe707 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khnx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khnx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khpx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khpx.xml index d2d82ebc22..9abd594628 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khpx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khpx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khtx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khtx.xml index 8950c65dcc..e5cc278747 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khtx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_khtx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kict.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kict.xml index baf10de8fb..e8653a61c0 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kict.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kict.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kicx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kicx.xml index 9c9449d03d..c93b48005e 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kicx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kicx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiln.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiln.xml index 579f600bab..c0dc8387a6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiln.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiln.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kilx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kilx.xml index 6be7c9ec34..1a7ed92526 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kilx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kilx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kind.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kind.xml index d5c791acc2..3b2ec7d6ee 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kind.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kind.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kinx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kinx.xml index c0bcfc15c9..0ab07b52a6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kinx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kinx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwa.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwa.xml index f61431feae..f4eb776ee4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwa.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwa.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwx.xml index 671025156a..bba2982137 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kiwx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjax.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjax.xml index 1a928e6263..441e8502d9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjax.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjax.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjgx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjgx.xml index 36a1c8f933..b358334df7 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjgx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjgx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjkl.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjkl.xml index 9ed453f1d9..fd6fd74e4c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjkl.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kjkl.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klbb.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klbb.xml index b3a417b60c..d02f1049ce 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klbb.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klbb.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klch.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klch.xml index e0d0ffbd19..04147d668e 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klch.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klch.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klgx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klgx.xml index be1ba6a4ee..746041d14d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klgx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klgx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klix.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klix.xml index c65e52338e..82a07d435e 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klix.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klix.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klnx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klnx.xml index 88c6edf76f..d8e8465420 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klnx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klnx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klot.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klot.xml index df06504fb3..3a53718988 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klot.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klot.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klrx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klrx.xml index 77a2043bd9..13c853eddb 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klrx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klrx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klsx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klsx.xml index aa00897dd5..62c4f25bfe 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klsx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klsx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kltx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kltx.xml index 692e0d21ac..52af8f80e0 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kltx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kltx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klvx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klvx.xml index 86db49dbcb..bab96e378a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klvx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klvx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klwx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klwx.xml index a8e4b53f2e..734e5108f0 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klwx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klwx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klzk.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klzk.xml index 4f1f8190f9..cb8c4afca5 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klzk.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_klzk.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmaf.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmaf.xml index cdc292308c..49453cf4bd 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmaf.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmaf.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmax.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmax.xml index ad44fa7f3b..bf2600f7f7 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmax.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmax.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmbx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmbx.xml index 4b0ea1e708..e57beb26d8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmbx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmbx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmhx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmhx.xml index e295da85b5..302044ee5e 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmhx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmhx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmkx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmkx.xml index 4c336c1122..b0462c5eb7 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmkx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmkx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmlb.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmlb.xml index 5c2214fd0f..7201766a8a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmlb.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmlb.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmob.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmob.xml index 588532dc77..d2bdd63287 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmob.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmob.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmpx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmpx.xml index f214c38c51..aca47c9d89 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmpx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmpx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmqt.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmqt.xml index f68fbc2fc6..4a01b4acf8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmqt.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmqt.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmrx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmrx.xml index 4531337507..de172532e9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmrx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmrx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmsx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmsx.xml index d357756891..7c6b1b87b5 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmsx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmsx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmtx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmtx.xml index b6d94b8bff..76b8538a1b 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmtx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmtx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmux.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmux.xml index 5dd82f5486..751ee3ea7b 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmux.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmux.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmvx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmvx.xml index 563126686a..18f36c216f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmvx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmvx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmxx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmxx.xml index 4803727723..612744bda9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmxx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kmxx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knkx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knkx.xml index 30bf8c8965..8bdf6ae5c8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knkx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knkx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knqa.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knqa.xml index f855b13a87..9347a141a4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knqa.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_knqa.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_koax.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_koax.xml index 14b5c1c48d..8831baf9c6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_koax.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_koax.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kohx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kohx.xml index 87e474461d..a565336f14 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kohx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kohx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kokx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kokx.xml index 8d749c3dfe..020eab32e9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kokx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kokx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kotx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kotx.xml index c9f33a47b6..190851ba38 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kotx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kotx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpah.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpah.xml index e4df2438dc..3c5ce7ac8c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpah.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpah.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpbz.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpbz.xml index 2e40b9b0d0..43560433da 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpbz.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpbz.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpdt.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpdt.xml index 4c08a16dae..e19742c94c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpdt.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpdt.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpoe.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpoe.xml index b93ae8da28..dc27982db6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpoe.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpoe.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpux.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpux.xml index d1b0fc3cf0..66e9306c34 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpux.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kpux.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krax.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krax.xml index 7d8f5000ae..b135277a47 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krax.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krax.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krgx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krgx.xml index 9c236d9217..4409c21f4c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krgx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krgx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kriw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kriw.xml index 95fc92c709..1f139f9b79 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kriw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kriw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krlx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krlx.xml index 8ef7dd6b8f..cba92ce867 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krlx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krlx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krtx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krtx.xml index f6068105bc..489834ed7b 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krtx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_krtx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksfx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksfx.xml index 5272d9ed0e..5452dde9d2 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksfx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksfx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksgf.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksgf.xml index fc3e1dbf91..7d43e4879f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksgf.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksgf.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kshv.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kshv.xml index ee2a5d6ab6..47a47da9a1 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kshv.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kshv.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksjt.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksjt.xml index 5c794c7d5c..9c0b148d26 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksjt.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksjt.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksox.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksox.xml index 5062dd02aa..ed6a723aa2 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksox.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksox.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksrx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksrx.xml index 778e1a653e..24c426518d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksrx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ksrx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktbw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktbw.xml index def960f7bf..10e773005f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktbw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktbw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktfx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktfx.xml index c8bb6cddf8..a8ee83c44b 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktfx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktfx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlh.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlh.xml index eed0b116c4..c355d35be6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlh.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlh.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlx.xml index b8b5922ff2..4f34877099 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktlx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktwx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktwx.xml index a5a01fe10d..1665157422 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktwx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktwx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktyx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktyx.xml index e6a1a2bac8..e2e079e7e9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktyx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ktyx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kudx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kudx.xml index 0f1dda7aee..0c279c42a9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kudx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kudx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kuex.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kuex.xml index 1b2bc57a70..c2e2372d76 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kuex.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kuex.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvax.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvax.xml index eca5dfe0b8..6369053425 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvax.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvax.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvbx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvbx.xml index 42b0c0804b..68c77a0adb 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvbx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvbx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvnx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvnx.xml index a980dd219f..4e72eb2af8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvnx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvnx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvtx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvtx.xml index c771686852..1fbb551be2 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvtx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvtx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvwx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvwx.xml index 481dbd8377..1fe7b655e4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvwx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kvwx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kyux.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kyux.xml index 302eb3961f..c85d81c51d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kyux.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_kyux.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_lpla.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_lpla.xml index 4e4b49f398..0ebf84bdb6 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_lpla.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_lpla.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pabc.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pabc.xml index 89292cde1f..d788cc5d80 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pabc.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pabc.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pacg.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pacg.xml index 461ab41787..3609f106ce 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pacg.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pacg.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paec.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paec.xml index 50cd8452d2..d0fe59db1d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paec.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paec.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pahg.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pahg.xml index a7b8c7cc8a..73e3f2a9f4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pahg.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pahg.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paih.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paih.xml index e23be4fdcd..e3aa0f7db0 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paih.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_paih.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pakc.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pakc.xml index b206a9c752..3bf9561563 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pakc.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pakc.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_papd.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_papd.xml index 5a5320d83f..836b45a38f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_papd.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_papd.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pgua.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pgua.xml index 3deeb3896c..4fa09d929a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pgua.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_pgua.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phki.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phki.xml index 8ec6b306c8..95a27b9b44 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phki.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phki.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phkm.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phkm.xml index 4b9acbb5fa..cd9b745dbf 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phkm.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phkm.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phmo.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phmo.xml index 1c2648f27a..31a48e730c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phmo.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phmo.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phwa.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phwa.xml index 78fc41b21d..1ec1d4c9a2 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phwa.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_phwa.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rkjk.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rkjk.xml index 25d05d033e..181bbe9585 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rkjk.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rkjk.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rksg.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rksg.xml index ca1a9e797a..be54db53aa 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rksg.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rksg.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rodn.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rodn.xml index db91756d99..f1c79703c4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rodn.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_rodn.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tadw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tadw.xml index dcb30dd17d..5e03f31c8d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tadw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tadw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tatl.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tatl.xml index 4936098bdf..7857e4acd2 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tatl.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tatl.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbna.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbna.xml index 9588e18730..c345117fbd 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbna.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbna.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbos.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbos.xml index 5c86284497..37ca11e52f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbos.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbos.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbwi.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbwi.xml index 5af84f94d1..49af15aaa4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbwi.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tbwi.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tclt.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tclt.xml index d753dcb2e1..2aebc24047 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tclt.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tclt.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcmh.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcmh.xml index fd4ff4091d..09b8ec5cc4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcmh.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcmh.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcvg.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcvg.xml index 5df8c296d1..3d7f0af238 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcvg.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tcvg.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdal.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdal.xml index 4588573d69..45b70baaee 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdal.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdal.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tday.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tday.xml index 40893234ae..ef03a2f067 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tday.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tday.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdca.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdca.xml index 76e3336c8a..55dc1fd8d3 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdca.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdca.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tden.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tden.xml index 2b864ddf47..a044475767 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tden.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tden.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdfw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdfw.xml index c0b0e6ee99..068a2e7509 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdfw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdfw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdtw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdtw.xml index b322fff94e..4831a2e54d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdtw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tdtw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tewr.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tewr.xml index 148ecc1de6..867d2792f2 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tewr.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tewr.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tfll.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tfll.xml index abf3e0e6de..b33e9f5802 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tfll.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tfll.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_thou.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_thou.xml index fca995ceac..03fd80ab4d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_thou.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_thou.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiad.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiad.xml index 4eb97559b4..a7981960c1 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiad.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiad.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiah.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiah.xml index 5f4cf0fc73..ff5f63e159 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiah.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tiah.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tich.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tich.xml index bc4c74d8fd..b7d89a64f5 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tich.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tich.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tids.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tids.xml index ffdc8ebafd..54bbf4a86d 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tids.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tids.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjfk.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjfk.xml index af88678aaf..07b01af8fc 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjfk.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjfk.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjua.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjua.xml index ccde035590..a8da06c842 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjua.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tjua.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlas.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlas.xml index 39c7631f73..050ec9e230 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlas.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlas.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlve.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlve.xml index 4925a643e8..5a3cc143a5 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlve.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tlve.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmci.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmci.xml index cca25a6201..4bc8506cf5 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmci.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmci.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmco.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmco.xml index b93c52eec9..7c75627f8a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmco.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmco.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmdw.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmdw.xml index aaa4e7451e..3647cd5882 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmdw.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmdw.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmem.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmem.xml index ee244c2989..5e9c9154b9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmem.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmem.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmia.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmia.xml index 6ad3ea1e4d..eada61930f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmia.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmia.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmke.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmke.xml index 3857d840d3..49ad7c7b70 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmke.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmke.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsp.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsp.xml index d31da1b7ce..c91c231ab8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsp.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsp.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsy.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsy.xml index 1b61604cbd..a4282043d8 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsy.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tmsy.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tokc.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tokc.xml index a752427df2..924949f7f2 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tokc.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tokc.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tord.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tord.xml index 37916c0350..998db5aba9 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tord.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tord.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpbi.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpbi.xml index ec7946e25e..d66f39e0be 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpbi.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpbi.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphl.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphl.xml index 13b79872a9..160de931e4 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphl.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphl.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphx.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphx.xml index fd9e7f5d85..4276f2fc1a 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphx.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tphx.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpit.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpit.xml index 7110a7e368..624b2797a1 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpit.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpit.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpsf.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpsf.xml index a61c708f36..650e2ebb46 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpsf.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tpsf.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_trdu.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_trdu.xml index df4a938de6..5454691f5f 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_trdu.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_trdu.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsdf.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsdf.xml index b106016ab3..61ff06e33b 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsdf.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsdf.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsju.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsju.xml index bd25e26fa6..1dd605ab0c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsju.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tsju.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tslc.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tslc.xml index 672becda51..33ae524d1c 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tslc.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tslc.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tstl.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tstl.xml index b05a22eae4..30b0f479cf 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tstl.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_tstl.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttpa.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttpa.xml index 9a600c9a40..cad96e47a0 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttpa.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttpa.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttul.xml b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttul.xml index f7f85b19aa..0601ebd6ce 100644 --- a/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttul.xml +++ b/cave/com.raytheon.viz.radar/localization/bundles/site/Radar_ttul.xml @@ -21,7 +21,7 @@ - + @@ -161,7 +161,7 @@ - + diff --git a/cave/com.raytheon.viz.radar/src/com/raytheon/viz/radar/rsc/map/RadarMapMouseHandler.java b/cave/com.raytheon.viz.radar/src/com/raytheon/viz/radar/rsc/map/RadarMapMouseHandler.java index 452416c8eb..68920068ae 100644 --- a/cave/com.raytheon.viz.radar/src/com/raytheon/viz/radar/rsc/map/RadarMapMouseHandler.java +++ b/cave/com.raytheon.viz.radar/src/com/raytheon/viz/radar/rsc/map/RadarMapMouseHandler.java @@ -155,8 +155,8 @@ public class RadarMapMouseHandler extends InputAdapter { Map variableSubstitutions = new HashMap<>(); // TODO: dynamically select this from some control - variableSubstitutions.put("product1", "94"); - variableSubstitutions.put("product2", "99"); + variableSubstitutions.put("product1", "153,94,19,20"); + variableSubstitutions.put("product2", "154,99,27,25"); new LoadBundleHandler("bundles/site/Radar_" + pt.getName().toLowerCase() + ".xml", variableSubstitutions, null, true).execute(null); diff --git a/cave/com.raytheon.viz.warngen/src/com/raytheon/viz/warngen/gui/WarngenDialog.java b/cave/com.raytheon.viz.warngen/src/com/raytheon/viz/warngen/gui/WarngenDialog.java index 11806e8329..b79c10fdc5 100644 --- a/cave/com.raytheon.viz.warngen/src/com/raytheon/viz/warngen/gui/WarngenDialog.java +++ b/cave/com.raytheon.viz.warngen/src/com/raytheon/viz/warngen/gui/WarngenDialog.java @@ -211,6 +211,7 @@ import com.vividsolutions.jts.geom.Polygon; * Dec 20, 2021 srcarter@ucar Check for null before setting layout data on tabs. Make all other components have false * for vertical expansion so the resizing only resizes the bullet list * Mar 15, 2022 srcarter@ucar Set the proper number of columns in the layout for the bottom buttons to be centered + * Jun 28, 2022 srcarter@ucar Small change to disable the "UPDATE LIST" combobox (not used in Unidata version) * * * @author chammack @@ -652,6 +653,8 @@ IWarningsArrivedListener, ISimulatedTimeChangeListener { gd.horizontalIndent = 30; updateListCbo = new Combo(productType, SWT.READ_ONLY | SWT.DROP_DOWN); + //disable the update list since we disable sending of warnings + updateListCbo.setEnabled(false); updateListCbo.setLayoutData(gd); recreateUpdates(); diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/AllWWA.xml b/cave/com.raytheon.viz.warnings/localization/bundles/AllWWA.xml index f10d00607b..078d6049c9 100644 --- a/cave/com.raytheon.viz.warnings/localization/bundles/AllWWA.xml +++ b/cave/com.raytheon.viz.warnings/localization/bundles/AllWWA.xml @@ -18,7 +18,7 @@ - + @@ -44,7 +44,7 @@ - + @@ -70,7 +70,7 @@ - + @@ -96,7 +96,7 @@ - + @@ -120,10 +120,37 @@ - + - + + + + + + + + + + + + + + PLAN_VIEW + + + + + + + + + + + + + + @@ -146,7 +173,7 @@ - + diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/ConvWWA.xml b/cave/com.raytheon.viz.warnings/localization/bundles/ConvWWA.xml new file mode 100644 index 0000000000..884f0946bb --- /dev/null +++ b/cave/com.raytheon.viz.warnings/localization/bundles/ConvWWA.xml @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PLAN_VIEW + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/FireWWA.xml b/cave/com.raytheon.viz.warnings/localization/bundles/FireWWA.xml new file mode 100644 index 0000000000..57cde11062 --- /dev/null +++ b/cave/com.raytheon.viz.warnings/localization/bundles/FireWWA.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/MarineWWA.xml b/cave/com.raytheon.viz.warnings/localization/bundles/MarineWWA.xml index ae4f7a13f3..8ca823951f 100644 --- a/cave/com.raytheon.viz.warnings/localization/bundles/MarineWWA.xml +++ b/cave/com.raytheon.viz.warnings/localization/bundles/MarineWWA.xml @@ -17,13 +17,14 @@ + isRequeryNecessaryOnTimeMatch="true" name="Tropical/Marine Watches, Warnings, Advisories"> - + + diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/OtherWWA.xml b/cave/com.raytheon.viz.warnings/localization/bundles/OtherWWA.xml new file mode 100644 index 0000000000..08abfd0060 --- /dev/null +++ b/cave/com.raytheon.viz.warnings/localization/bundles/OtherWWA.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/SPS.xml b/cave/com.raytheon.viz.warnings/localization/bundles/SPS.xml index 090eb196e9..da60b436bc 100644 --- a/cave/com.raytheon.viz.warnings/localization/bundles/SPS.xml +++ b/cave/com.raytheon.viz.warnings/localization/bundles/SPS.xml @@ -17,7 +17,7 @@ + isRequeryNecessaryOnTimeMatch="false" name="Special Weather Statements"> diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/WindWWA.xml b/cave/com.raytheon.viz.warnings/localization/bundles/WindWWA.xml index 8217e68841..4aca8d12e1 100644 --- a/cave/com.raytheon.viz.warnings/localization/bundles/WindWWA.xml +++ b/cave/com.raytheon.viz.warnings/localization/bundles/WindWWA.xml @@ -23,7 +23,7 @@ - + diff --git a/cave/com.raytheon.viz.warnings/localization/bundles/WinterWWA.xml b/cave/com.raytheon.viz.warnings/localization/bundles/WinterWWA.xml index f33dcde649..6f09ea6b2e 100644 --- a/cave/com.raytheon.viz.warnings/localization/bundles/WinterWWA.xml +++ b/cave/com.raytheon.viz.warnings/localization/bundles/WinterWWA.xml @@ -23,7 +23,7 @@ - + diff --git a/cave/com.raytheon.viz.warnings/localization/menus/warnings/baseWarnings.xml b/cave/com.raytheon.viz.warnings/localization/menus/warnings/baseWarnings.xml index 077127b9cd..1c0a4add35 100644 --- a/cave/com.raytheon.viz.warnings/localization/menus/warnings/baseWarnings.xml +++ b/cave/com.raytheon.viz.warnings/localization/menus/warnings/baseWarnings.xml @@ -10,30 +10,41 @@ + - + --> + + + + + + - - - + + + + + diff --git a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/AbstractWWAResource.java b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/AbstractWWAResource.java index f8b6110519..cc4749f2ca 100644 --- a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/AbstractWWAResource.java +++ b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/AbstractWWAResource.java @@ -96,6 +96,8 @@ import com.vividsolutions.jts.geom.prep.PreparedGeometryFactory; * Aug 22, 2016 5842 dgilling Remove dependency on viz.texteditor plugin. * Dec 19, 2018 ---- mjames@ucar Added phensig color table lookup. * Mar 15, 2022 srcarter@ucar Add support for display settings for outline, fill, text and time displays + * Jun 24, 2022 srcarter@ucar Add 'statement/other' display settings, set enabled for only relevant WWA types + * Jun 28, 2022 srcarter@ucar Display sampling based on new 'sampling' settings * * * @@ -161,19 +163,44 @@ public abstract class AbstractWWAResource extends public static final boolean ADV_TEXT_DEFAULT = true; /** Whether to display advisory time by default */ public static final boolean ADV_TIME_DEFAULT = true; + /** Whether to display statements/other outlines by default */ + public static final boolean OTHER_OUTLINE_DEFAULT = true; + /** Whether to display statements/other fill by default */ + public static final boolean OTHER_FILL_DEFAULT = true; + /** Whether to display statements/other text by default */ + public static final boolean OTHER_TEXT_DEFAULT = true; + /** Whether to display statements/other time by default */ + public static final boolean OTHER_TIME_DEFAULT = true; //gui display variables private boolean warnOutline = WARN_OUTLINE_DEFAULT; private boolean warnFill = WARN_FILL_DEFAULT; private boolean warnText = WARN_TEXT_DEFAULT; private boolean warnTime = WARN_TIME_DEFAULT; + private boolean warnSample = true; private boolean watchOutline = WATCH_OUTLINE_DEFAULT; private boolean watchFill = WATCH_FILL_DEFAULT; private boolean watchText = WATCH_TEXT_DEFAULT; private boolean watchTime = WATCH_TIME_DEFAULT; + private boolean watchSample = true; private boolean advOutline = ADV_OUTLINE_DEFAULT; private boolean advFill = ADV_FILL_DEFAULT; private boolean advText = ADV_TEXT_DEFAULT; private boolean advTime = ADV_TIME_DEFAULT; + private boolean advSample = true; + private boolean otherOutline = OTHER_OUTLINE_DEFAULT; + private boolean otherFill = OTHER_FILL_DEFAULT; + private boolean otherText = OTHER_TEXT_DEFAULT; + private boolean otherTime = OTHER_TIME_DEFAULT; + private boolean otherSample = true; + private boolean enableWarnDisplay = false; + private boolean enableWatchDisplay = false; + private boolean enableAdvisoryDisplay = false; + private boolean enableOtherDisplay = false; + + // The significance values for WWAs + private static final String WARN_SIG = "W"; + private static final String WATCH_SIG = "A"; + private static final String ADVISORY_SIG = "Y"; /** The dialog used to change display properties */ private DrawingPropertiesDialog drawingDialog; @@ -273,7 +300,33 @@ public abstract class AbstractWWAResource extends WarningEntry entry = entryMap.get(key); AbstractWarningRecord record = entry.record; - if (matchesFrame(entry, time, framePeriod, lastFrame) + String sig = record.getSig(); + boolean samplingOn = false; + if(sig !=null){ + if(sig.equals(WATCH_SIG)){ + if(showWatchSampling()){ + samplingOn = true; + } + }else if(sig.equals(WARN_SIG)){ + if(showWarnSampling()){ + samplingOn = true; + } + }else if(sig.equals(ADVISORY_SIG)){ + if(showAdvisorySampling()){ + samplingOn = true; + } + }else{ + if(showOtherSampling()){ + samplingOn = true; + } + } + }else{ + if(showOtherSampling()){ + samplingOn = true; + } + } + + if (samplingOn && matchesFrame(entry, time, framePeriod, lastFrame) && record.getGeometry() != null) { Geometry recordGeom = record.getGeometry(); @@ -414,31 +467,42 @@ public abstract class AbstractWWAResource extends boolean drawText = true; boolean drawTime = true; + String sig = record.getSig(); + boolean sigRecognized = false; if(record != null && record.getSig() != null){ - String sig = record.getSig(); //warning - if(sig.equalsIgnoreCase("W")){ + if(sig.equalsIgnoreCase(WARN_SIG)){ drawShape = warnFill; drawOutline = warnOutline; drawText = warnText; drawTime = warnTime; + sigRecognized = true; } //watch - else if(sig.equalsIgnoreCase("A")){ + else if(sig.equalsIgnoreCase(WATCH_SIG)){ drawShape = watchFill; drawOutline = watchOutline; drawText = watchText; drawTime = watchTime; + sigRecognized = true; } //advisory - else if(sig.equals("Y")){ + else if(sig.equals(ADVISORY_SIG)){ drawShape = advFill; drawOutline = advOutline; drawText = advText; drawTime = advTime; + sigRecognized = true; } } + + if(sig == null || !sigRecognized){ + drawShape = otherFill; + drawOutline = otherOutline; + drawText = otherText; + drawTime = otherTime; + } // check shapes if (entry.project) { @@ -631,7 +695,38 @@ public abstract class AbstractWWAResource extends if (!resourceData.getMetadataMap().containsKey("officeid") || resourceData.getMetadataMap().get("officeid") .getConstraintValue().contains(officeid)) { - this.recordsToLoad.add((AbstractWarningRecord) pdo); + + AbstractWarningRecord rec = (AbstractWarningRecord) pdo; + this.recordsToLoad.add(rec); + + //set the drawing display for the corresponding significance types + // if all settings are on, no need to keep doing it + if(rec !=null && (!enableWatchDisplay || !enableWarnDisplay || !enableAdvisoryDisplay || !enableOtherDisplay)){ + String sig = rec.getSig(); + boolean sigRecognized = false; + if(sig!=null){ + if(sig.equals(WARN_SIG)){ + enableWarnDisplay = true; + sigRecognized = true; + } + else if(sig.equals(WATCH_SIG)){ + enableWatchDisplay = true; + sigRecognized = true; + } + else if(sig.equals(ADVISORY_SIG)){ + enableAdvisoryDisplay = true; + sigRecognized = true; + } + } + if(sig == null || !sigRecognized){ + enableOtherDisplay = true; + } + } + + //update display if it already exists + if(drawingDialog != null && !drawingDialog.isDisposed()){ + drawingDialog.updateControlsEnabled(enableWatchDisplay, enableWarnDisplay, enableAdvisoryDisplay, enableOtherDisplay); + } } } } @@ -861,6 +956,15 @@ public abstract class AbstractWWAResource extends public void setWarnTimeDisplay(boolean warnTime) { this.warnTime = warnTime; } + + /** + * Set whether or not to display the sampling for warnings + * @param warnSample If true, will show the sampling output + * for warnings, when sampling is enabled + */ + public void setWarnSampleDisplay(boolean warnSample) { + this.warnSample = warnSample; + } /** * Set whether or not to display the outline for watches @@ -893,6 +997,15 @@ public abstract class AbstractWWAResource extends public void setWatchTimeDisplay(boolean watchTime) { this.watchTime = watchTime; } + + /** + * Set whether or not to display the sampling for watches + * @param watchSample If true, will show the sampling output + * for watches, when sampling is enabled + */ + public void setWatchSampleDisplay(boolean watchSample) { + this.watchSample = watchSample; + } /** * Set whether or not to display the outline for advisories @@ -927,6 +1040,61 @@ public abstract class AbstractWWAResource extends this.advTime = advTime; } + /** + * Set whether or not to display the sampling for advisories + * @param advSample If true, will show the sampling output + * for advisories, when sampling is enabled + */ + public void setAdvisorySampleDisplay(boolean advSample) { + this.advSample = advSample; + } + + /** + * Set whether or not to display the outline for statements + * and other records + * @param advOutline If true, will draw the outline + */ + public void setOtherOutlineDisplay(boolean otherOutline) { + this.otherOutline = otherOutline; + } + + /** + * Set whether or not to display the fill (shaded shape) for + * statements and other records + * @param otherFill If true, will draw the fill + */ + public void setOtherFillDisplay(boolean otherFill) { + this.otherFill = otherFill; + } + + /** + * Set whether or not to display the text for statements + * and other records + * @param otherText If true, will draw the title + */ + public void setOtherTextDisplay(boolean otherText) { + this.otherText = otherText; + } + + /** + * Set whether or not to display the time for statements + * and other records + * @param otherTime If true, will draw the time + */ + public void setOtherTimeDisplay(boolean otherTime) { + this.otherTime = otherTime; + } + + /** + * Set whether or not to display the sampling for statements/ + * other records + * @param otherSample If true, will show the sampling output + * for statements/other records, when sampling is enabled + */ + public void setOtherSampleDisplay(boolean otherSample) { + this.otherSample = otherSample; + } + /** * @return True if the warning outline is displayed */ @@ -955,6 +1123,13 @@ public abstract class AbstractWWAResource extends return warnTime; } + /** + * @return True if the warning sampling is to be displayed + */ + public boolean showWarnSampling(){ + return warnSample; + } + /** * @return True if the watch outline is displayed */ @@ -983,6 +1158,13 @@ public abstract class AbstractWWAResource extends return watchTime; } + /** + * @return True if the watch sampling is to be displayed + */ + public boolean showWatchSampling(){ + return watchSample; + } + /** * @return True if the advisory outline is displayed */ @@ -1011,6 +1193,80 @@ public abstract class AbstractWWAResource extends return advTime; } + /** + * @return True if the advisory sampling is to be displayed + */ + public boolean showAdvisorySampling(){ + return advSample; + } + + /** + * @return True if the statement/other outline is displayed + */ + public boolean showOtherOutline(){ + return otherOutline; + } + + /** + * @return True if the statement/other fill is displayed + */ + public boolean showOtherFill(){ + return otherFill; + } + + /** + * @return True if the statement/other text is displayed + */ + public boolean showOtherText(){ + return otherText; + } + + /** + * @return True if the statement/other time is displayed + */ + public boolean showOtherTime(){ + return otherTime; + } + + /** + * @return True if the other/statement sampling is to be displayed + */ + public boolean showOtherSampling(){ + return otherSample; + } + + /** + * @return True if the warning display settings are to + * be enabled + */ + public boolean enableWarnDisplay() { + return enableWarnDisplay; + } + + /** + * @return True if the watch display settings are to + * be enabled + */ + public boolean enableWatchDisplay() { + return enableWatchDisplay; + } + + /** + * @return True if the advisory display settings are + * to be enabled + */ + public boolean enableAdvisoryDisplay() { + return enableAdvisoryDisplay; + } + + /** + * @return True if the warning statement/other settings + * are to be enabled + */ + public boolean enableOtherDisplay(){ + return enableOtherDisplay; + } + /** * Set the associated DrawingPropertiesDialog * @param dialog diff --git a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/CWASPSResource.java b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/CWASPSResource.java index 0e0e148566..1cc9997ada 100644 --- a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/CWASPSResource.java +++ b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/rsc/CWASPSResource.java @@ -36,15 +36,15 @@ import com.raytheon.uf.viz.core.IGraphicsTarget; import com.raytheon.uf.viz.core.catalog.DirectDbQuery; import com.raytheon.uf.viz.core.catalog.DirectDbQuery.QueryLanguage; import com.raytheon.uf.viz.core.drawables.FillPatterns; +import com.raytheon.uf.viz.core.drawables.IShadedShape; +import com.raytheon.uf.viz.core.drawables.IWireframeShape; import com.raytheon.uf.viz.core.drawables.JTSCompiler; import com.raytheon.uf.viz.core.drawables.JTSCompiler.JTSGeometryData; import com.raytheon.uf.viz.core.drawables.JTSCompiler.PointStyle; -import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.rsc.LoadProperties; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryCollection; import com.vividsolutions.jts.geom.GeometryFactory; -import com.vividsolutions.jts.io.ParseException; import com.vividsolutions.jts.io.WKBReader; import com.vividsolutions.jts.io.WKTReader; @@ -63,6 +63,7 @@ import com.vividsolutions.jts.io.WKTReader; * Aug 01, 2014 3471 mapeters Updated deprecated createShadedShape() calls. * Aug 22, 2016 5842 dgilling Remove dependency on viz.texteditor plugin. * Sep 14, 2016 3241 bsteffen Update deprecated JTSCompiler method calls + * Jun 24, 2022 srcarter@ucar Always create outline (wireshapes) and fill (shadedshapes) * * * @author rjpeter @@ -187,82 +188,47 @@ public class CWASPSResource extends WatchesResource { entry.record = record; entryMap.put(record.getDataURI(), entry); } - - // default to a wireframe shape - boolean isShaded = false; - - if (entry.shadedShape != null) { - // if the shape was in the shadedShape map then create a shaded - // shape - isShaded = true; - } else if ((entry.wireframeShape == null) - && (record.getGeometry() == null)) { - // if it is not in the wireframeShape map and the geometry is null - // then create a shaded shape - isShaded = true; - } - - if (isShaded) { - if (!record.getUgcZones().isEmpty()) { - // if the geometry is null get a geometry based on the county - // list - if (record.getGeometry() == null) { - record.setGeometry(getGeometry(record)); - } - if (record.getGeometry() != null) { - - // dispose old shape - if (entry.shadedShape != null) { - entry.shadedShape.dispose(); - } - - entry.shadedShape = target.createShadedShape(false, - descriptor.getGridGeometry()); - try { - geo = wktr.read(record.getGeometry().toString()); - - JTSCompiler jtsCompiler = new JTSCompiler( - entry.shadedShape, null, this.descriptor); - JTSGeometryData jtsData = jtsCompiler - .createGeometryData(); - jtsData.setPointStyle(PointStyle.CROSS); - jtsData.setGeometryColor(color); - try { - jtsCompiler.handle(geo, jtsData); - } catch (VizException e) { - statusHandler.handle(Priority.PROBLEM, - e.getLocalizedMessage(), e); - entryMap.remove(entry.record.getDataURI()); - return; - } - entry.shadedShape.setFillPattern(FillPatterns - .getGLPattern("VERTICAL_DOTTED")); - entry.shadedShape.compile(); - } catch (ParseException e) { - statusHandler.handle(Priority.PROBLEM, - e.getLocalizedMessage(), e); - } - } + + if (!record.getUgcZones().isEmpty()) { + // if the geometry is null get a geometry based on the county + // list + if (record.getGeometry() == null) { + record.setGeometry(getGeometry(record)); } - } else { + if (record.getGeometry() != null) { + try { + //give every entry a fill and outline + //add fill (shadedshape) + IShadedShape ss = target.createShadedShape(false, descriptor.getGridGeometry()); + geo = wktr.read(record.getGeometry().toString()); + JTSCompiler jtsCompiler = new JTSCompiler(ss, null, this.descriptor); + JTSGeometryData geoData = jtsCompiler.createGeometryData(); + geoData.setGeometryColor(color); + geoData.setPointStyle(PointStyle.CROSS); + jtsCompiler.handle(geo, geoData); + ss.setFillPattern(FillPatterns.getGLPattern("VERTICAL_DOTTED")); + ss.compile(); - try { - // dispose old shape - if (entry.wireframeShape != null) { - entry.wireframeShape.dispose(); + entry.shadedShape = ss; + + //add outline (wireshape) + IWireframeShape wfs = entry.wireframeShape; + + if (wfs != null) { + wfs.dispose(); + } + + wfs = target.createWireframeShape(false, descriptor); + + jtsCompiler = new JTSCompiler(null, wfs, descriptor); + jtsCompiler.handle(geo); + wfs.compile(); + entry.wireframeShape = wfs; + + } catch (Exception e) { + statusHandler.handle(Priority.ERROR, + "Error creating wireframe", e); } - - entry.wireframeShape = target.createWireframeShape(false, - descriptor); - geo = wktr.read(record.getGeometry().toString()); - - JTSCompiler jtsCompiler = new JTSCompiler(null, - entry.wireframeShape, descriptor); - jtsCompiler.handle(geo); - entry.wireframeShape.compile(); - } catch (Exception e) { - statusHandler.handle(Priority.ERROR, - "Error creating wireframe", e); } } } diff --git a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/DrawingPropertiesDialog.java b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/DrawingPropertiesDialog.java index 97c1a82908..a6420aebd6 100644 --- a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/DrawingPropertiesDialog.java +++ b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/DrawingPropertiesDialog.java @@ -26,6 +26,8 @@ import com.raytheon.viz.warnings.rsc.AbstractWWAResource; * ------------ ---------- ---------------- -------------------------- * Mar 15, 2022 srcarter@ucar Initial creation * Mar 21, 2022 srcarter@ucar Set the current values every time initializeComponents is called (also called from .Open) + * Jun 24, 2022 srcarter@ucar Move Watches to top, add section for Other/Statement, add 'enabled' functionality + * Jun 28, 2022 srcarter@ucar Add 'Sampling' options * * * @@ -39,14 +41,22 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { private Button warnFillChk; private Button warnTextChk; private Button warnTimeChk; + private Button warnSampleChk; private Button watchOutlineChk; private Button watchFillChk; private Button watchTextChk; private Button watchTimeChk; + private Button watchSampleChk; private Button advOutlineChk; private Button advFillChk; private Button advTextChk; private Button advTimeChk; + private Button advSampleChk; + private Button otherOutlineChk; + private Button otherFillChk; + private Button otherTextChk; + private Button otherTimeChk; + private Button otherSampleChk; /** * The WWA Resource associated with this properties dialog @@ -67,6 +77,8 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { } @Override + // Create and initialize all gui components for controlling the drawing + // displays for the WWAs. protected void initializeComponents(Shell shell) { // --- Sub title --- Composite subComp = new Composite(shell, SWT.NONE); @@ -74,22 +86,7 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { subComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); Label layerName = new Label(subComp, SWT.NONE); layerName.setText(myResource.getResourceData().getName()); - - // --- Warnings --- - Group warnComp = new Group(shell, SWT.NONE); - warnComp.setText("Warnings"); - warnComp.setLayoutData(new GridData(SWT.CENTER, SWT.FILL, true, true)); - warnComp.setLayout(new GridLayout(2, true)); - - //outline and fill - warnOutlineChk = createButton(warnComp, "Show Outline"); - warnFillChk = createButton(warnComp, "Thatched Fill"); - //text and time - warnTextChk = createButton(warnComp, "Show Text"); - warnTimeChk = createButton(warnComp, "Show Time"); - - // --- end Warnings --- - + // --- Watches --- Group watchComp = new Group(shell, SWT.NONE); watchComp.setText("Watches"); @@ -104,8 +101,28 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { watchTextChk = createButton(watchComp, "Show Text"); watchTimeChk = createButton(watchComp, "Show Time"); + //sample + watchSampleChk = createButton(watchComp, "Show Sampling"); + // --- end Watches --- + // --- Warnings --- + Group warnComp = new Group(shell, SWT.NONE); + warnComp.setText("Warnings"); + warnComp.setLayoutData(new GridData(SWT.CENTER, SWT.FILL, true, true)); + warnComp.setLayout(new GridLayout(2, true)); + + //outline and fill + warnOutlineChk = createButton(warnComp, "Show Outline"); + warnFillChk = createButton(warnComp, "Thatched Fill"); + //text and time + warnTextChk = createButton(warnComp, "Show Text"); + warnTimeChk = createButton(warnComp, "Show Time"); + //sample + warnSampleChk = createButton(warnComp, "Show Sampling"); + + // --- end Warnings --- + // --- Advisories --- Group advComp = new Group(shell, SWT.NONE); advComp.setText("Advisories"); @@ -120,7 +137,29 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { advTextChk = createButton(advComp, "Show Text"); advTimeChk = createButton(advComp, "Show Time"); - // --- end Advisories --- + //sample + advSampleChk = createButton(advComp, "Show Sampling"); + + // --- end Advisories --- + + // --- Other --- + Group otherComp = new Group(shell, SWT.NONE); + otherComp.setText("Statements/Other"); + otherComp.setLayoutData(new GridData(SWT.CENTER, SWT.FILL, true, true)); + otherComp.setLayout(new GridLayout(2, true)); + + //outline and fill + otherOutlineChk = createButton(otherComp, "Show Outline"); + otherFillChk = createButton(otherComp, "Thatched Fill"); + + //text and time + otherTextChk = createButton(otherComp, "Show Text"); + otherTimeChk = createButton(otherComp, "Show Time"); + + //sample + otherSampleChk = createButton(otherComp, "Show Sampling"); + + // --- end Other --- // --- Bottom Buttons --- Composite btnComp = new Composite(shell, SWT.NONE); @@ -156,6 +195,51 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { //set all the values setToCurrentValues(); + + //set visibility from resource + setWarningControlsEnabled(myResource.enableWarnDisplay()); + setWatchControlsEnabled(myResource.enableWatchDisplay()); + setAdvisoryControlsEnabled(myResource.enableAdvisoryDisplay()); + setOtherControlsEnabled(myResource.enableOtherDisplay()); + } + + public void updateControlsEnabled(boolean enableWatch, boolean enableWarn, boolean enableAdv, boolean enableOther){ + setWatchControlsEnabled(enableWatch); + setWarningControlsEnabled(enableWarn); + setAdvisoryControlsEnabled(enableAdv); + setOtherControlsEnabled(enableOther); + } + + private void setWarningControlsEnabled(boolean isEnabled){ + warnOutlineChk.setEnabled(isEnabled); + warnFillChk.setEnabled(isEnabled); + warnTextChk.setEnabled(isEnabled); + warnTimeChk.setEnabled(isEnabled); + warnSampleChk.setEnabled(isEnabled); + } + + private void setWatchControlsEnabled(boolean isEnabled){ + watchOutlineChk.setEnabled(isEnabled); + watchFillChk.setEnabled(isEnabled); + watchTextChk.setEnabled(isEnabled); + watchTimeChk.setEnabled(isEnabled); + watchSampleChk.setEnabled(isEnabled); + } + + private void setAdvisoryControlsEnabled(boolean isEnabled){ + advOutlineChk.setEnabled(isEnabled); + advFillChk.setEnabled(isEnabled); + advTextChk.setEnabled(isEnabled); + advTimeChk.setEnabled(isEnabled); + advSampleChk.setEnabled(isEnabled); + } + + private void setOtherControlsEnabled(boolean isEnabled){ + otherOutlineChk.setEnabled(isEnabled); + otherFillChk.setEnabled(isEnabled); + otherTextChk.setEnabled(isEnabled); + otherTimeChk.setEnabled(isEnabled); + otherSampleChk.setEnabled(isEnabled); } /** @@ -195,16 +279,26 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { myResource.setWarnFillDisplay(warnFillChk.getSelection()); myResource.setWarnTextDisplay(warnTextChk.getSelection()); myResource.setWarnTimeDisplay(warnTimeChk.getSelection()); + myResource.setWarnSampleDisplay(warnSampleChk.getSelection()); myResource.setWatchOutlineDisplay(watchOutlineChk.getSelection()); myResource.setWatchFillDisplay(watchFillChk.getSelection()); myResource.setWatchTextDisplay(watchTextChk.getSelection()); myResource.setWatchTimeDisplay(watchTimeChk.getSelection()); + myResource.setWatchSampleDisplay(watchSampleChk.getSelection()); myResource.setAdvisoryOutlineDisplay(advOutlineChk.getSelection()); myResource.setAdvisoryFillDisplay(advFillChk.getSelection()); myResource.setAdvisoryTextDisplay(advTextChk.getSelection()); myResource.setAdvisoryTimeDisplay(advTimeChk.getSelection()); + myResource.setAdvisorySampleDisplay(advSampleChk.getSelection()); + + myResource.setOtherOutlineDisplay(otherOutlineChk.getSelection()); + myResource.setOtherFillDisplay(otherFillChk.getSelection()); + myResource.setOtherTextDisplay(otherTextChk.getSelection()); + myResource.setOtherTimeDisplay(otherTimeChk.getSelection()); + myResource.setOtherSampleDisplay(otherSampleChk.getSelection()); + myResource.issueRefresh(); } @@ -217,18 +311,27 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { warnFillChk.setSelection(AbstractWWAResource.WARN_FILL_DEFAULT); warnTextChk.setSelection(AbstractWWAResource.WARN_TEXT_DEFAULT); warnTimeChk.setSelection(AbstractWWAResource.WARN_TIME_DEFAULT); + warnSampleChk.setSelection(true); watchOutlineChk.setSelection(AbstractWWAResource.WATCH_OUTLINE_DEFAULT); watchFillChk.setSelection(AbstractWWAResource.WATCH_FILL_DEFAULT); watchTextChk.setSelection(AbstractWWAResource.WATCH_TEXT_DEFAULT); watchTimeChk.setSelection(AbstractWWAResource.WATCH_TIME_DEFAULT); + watchSampleChk.setSelection(true); advOutlineChk.setSelection(AbstractWWAResource.ADV_OUTLINE_DEFAULT); advFillChk.setSelection(AbstractWWAResource.ADV_FILL_DEFAULT); advTextChk.setSelection(AbstractWWAResource.ADV_TEXT_DEFAULT); advTimeChk.setSelection(AbstractWWAResource.ADV_TIME_DEFAULT); + advSampleChk.setSelection(true); + + otherOutlineChk.setSelection(AbstractWWAResource.OTHER_OUTLINE_DEFAULT); + otherFillChk.setSelection(AbstractWWAResource.OTHER_FILL_DEFAULT); + otherTextChk.setSelection(AbstractWWAResource.OTHER_TEXT_DEFAULT); + otherTimeChk.setSelection(AbstractWWAResource.OTHER_TIME_DEFAULT); + otherSampleChk.setSelection(true); } - + /** * Set all the GUI checkboxes to the current boolean values from * the associated resource @@ -238,15 +341,24 @@ public class DrawingPropertiesDialog extends CaveSWTDialog { warnFillChk.setSelection(myResource.showWarnFill()); warnTextChk.setSelection(myResource.showWarnText()); warnTimeChk.setSelection(myResource.showWarnTime()); + warnSampleChk.setSelection(myResource.showWarnSampling()); watchOutlineChk.setSelection(myResource.showWatchOutline()); watchFillChk.setSelection(myResource.showWatchFill()); watchTextChk.setSelection(myResource.showWatchText()); watchTimeChk.setSelection(myResource.showWatchTime()); + watchSampleChk.setSelection(myResource.showWatchSampling()); advOutlineChk.setSelection(myResource.showAdvisoryOutline()); advFillChk.setSelection(myResource.showAdvisoryFill()); advTextChk.setSelection(myResource.showAdvisoryText()); advTimeChk.setSelection(myResource.showAdvisoryTime()); + advSampleChk.setSelection(myResource.showAdvisorySampling()); + + otherOutlineChk.setSelection(myResource.showOtherOutline()); + otherFillChk.setSelection(myResource.showOtherFill()); + otherTextChk.setSelection(myResource.showOtherText()); + otherTimeChk.setSelection(myResource.showOtherTime()); + otherSampleChk.setSelection(myResource.showOtherSampling()); } } diff --git a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/WWADrawingPropertiesAction.java b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/WWADrawingPropertiesAction.java index cb5d506f4d..1d65cc0ba2 100644 --- a/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/WWADrawingPropertiesAction.java +++ b/cave/com.raytheon.viz.warnings/src/com/raytheon/viz/warnings/ui/WWADrawingPropertiesAction.java @@ -22,6 +22,7 @@ import com.raytheon.viz.warnings.rsc.WatchesResource; * ------------ ---------- ---------------- -------------------------- * Mar 15, 2022 srcarter@ucar Initial creation * Mar 17, 2022 srcarter@ucar Small change to isHidden to only display for proper resources + * Jun 24, 2022 srcarter@ucar Enable for CWASPSResources as well * * * @@ -65,7 +66,7 @@ public class WWADrawingPropertiesAction extends AbstractRightClickAction { public boolean isHidden(){ AbstractVizResource rsc = getSelectedRsc(); - if((rsc instanceof WatchesResource || rsc instanceof WarningsResource) && !(rsc instanceof CWASPSResource)){ + if(rsc instanceof WatchesResource || rsc instanceof WarningsResource){ return false; } return true; diff --git a/docs/install/common-problems.md b/docs/appendix/common-problems.md similarity index 84% rename from docs/install/common-problems.md rename to docs/appendix/common-problems.md index 1191cafa3c..2b6d69d492 100644 --- a/docs/install/common-problems.md +++ b/docs/appendix/common-problems.md @@ -23,6 +23,22 @@ For Mac users, the easiest way is to open a new terminal and run the following c rm -rf ~/Library/caveData +--- + +## Disappearing Configurations + +If you ever notice some of the following settings you've configured/saved disappear from CAVE: + +- Saved Displays or Procedures +- NSHARP settings (line thickness, etc) +- Colormap settings +- StyleRule settings + +!!! note "This is not a fully exhaustive list, so if something else has disappeared it might be the same underlying issue still." + +Then it is likely we have recently changed our production EDEX server. +There is a good chance we can recover your settings. To do so, please send a short email to [support-awips@unidata.ucar.edu](mailto:support-awips@unidata.ucar.edu) with the topic "Missing Configurations", and include the username(s) of the computer(s) you use to run CAVE. + --- ## Monterey CAVE Warning @@ -60,7 +76,10 @@ One common error some users are seeing manifests itself just after selecting an These errors are actually happening because the Windows machine is using IPv6, which is not compatible with AWIPS at this time. **To fix the issue simply follow these steps:** ->**Note**: These screenshots may vary from your system. +!!! note "These screenshots may vary from your system." + +!!! warning "These instructions are per connection, so if you use multiple connections or switch between wired and wireless connections, you'll need to do the following for each of those connections so that CAVE will always run properly." + **1. Close all error windows and any open windows associated with CAVE.** diff --git a/docs/appendix/educational-resources.md b/docs/appendix/educational-resources.md index 7faf277aa7..a8390282b3 100644 --- a/docs/appendix/educational-resources.md +++ b/docs/appendix/educational-resources.md @@ -107,6 +107,8 @@ A full list of all released blogs can be found below: - [Announcing AWIPS eLearning](https://www.unidata.ucar.edu/blogs/news/entry/announcing-a-new-elearning-course) - [AWIPS 18.2.1-3 Software Release](https://www.unidata.ucar.edu/blogs/news/entry/awips-18-2-1-3) - [Access Learn AWIPS CAVE from Unidata eLearning](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-access-learn-awips) +- [AWIPS 18.2.1-5 Software Release](https://www.unidata.ucar.edu/blogs/news/entry/awips-18-2-1-5) +- [GLM DATA IDD/LDM Feed Updates](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-glm-data-idd) #### CAVE @@ -122,6 +124,9 @@ A full list of all released blogs can be found below: - [Getting Started With the NSHARP Display Tool](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-using-the-nsharp) - [Explore the CAVE Volume Browser: Model Soundings](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-explore-the-cave3) - [NUCAPS Soundings](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-nucaps-soundings) +- [Import Shapefiles in CAVE](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-import-shapefiles-in) +- [Create Objective Analysis Plots](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-create-objective-analysis) +- [Use Warngen to Draw Convective Warnings](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-use-warngen-to) #### Python-AWIPS @@ -129,8 +134,11 @@ A full list of all released blogs can be found below: - [Plot New GOES Products From Unidata's Public EDEX](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-plot-new-goes) - [Load Map Resources and Topography using Python-AWIPS](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-load-map-resources) - [Create a Colored Surface Temperature Plot](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-create-a-colored) +- [View WWA Polygons with Python-AWIPS](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-view-wwa-polygons) +- [Creating METAR Station Plots](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-creating-metar-station) #### EDEX - [Get to Know EDEX](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-get-to-know) - [EDEX Data Retention](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-edex-data-retention) +- [Adding ECMWF Data to EDEX](https://www.unidata.ucar.edu/blogs/news/entry/awips-tips-adding-ecmwf-data) diff --git a/docs/assets/javascripts/application-0b7df094bf.js b/docs/assets/javascripts/application-0b7df094bf.js deleted file mode 100644 index 1a5787f186..0000000000 --- a/docs/assets/javascripts/application-0b7df094bf.js +++ /dev/null @@ -1,3 +0,0 @@ -window.app=function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=95)}([function(t,e,n){"use strict";var r=n(30)("wks"),o=n(22),i=n(1).Symbol,a="function"==typeof i,s=t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))};s.store=r},function(t,e,n){"use strict";var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},function(t,e,n){"use strict";var r=n(11);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,e,n){"use strict";var r=n(12),o=n(29);t.exports=n(5)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){"use strict";var r=t.exports={version:"2.4.0"};"number"==typeof __e&&(__e=r)},function(t,e,n){"use strict";t.exports=!n(25)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,e,n){"use strict";var r={}.hasOwnProperty;t.exports=function(t,e){return r.call(t,e)}},function(t,e,n){"use strict";t.exports={}},function(t,e,n){"use strict";var r=n(1),o=n(3),i=n(6),a=n(22)("src"),s="toString",c=Function[s],u=(""+c).split(s);n(4).inspectSource=function(t){return c.call(t)},(t.exports=function(t,e,n,s){var c="function"==typeof n;c&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(c&&(i(n,a)||o(n,a,t[e]?""+t[e]:u.join(String(e)))),t===r?t[e]=n:s?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,s,function(){return"function"==typeof this&&this[a]||c.call(this)})},function(t,e,n){"use strict";var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},function(t,e,n){"use strict";var r=n(14);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};t.exports=function(t){return"object"===("undefined"==typeof t?"undefined":r(t))?null!==t:"function"==typeof t}},function(t,e,n){"use strict";var r=n(2),o=n(43),i=n(63),a=Object.defineProperty;e.f=n(5)?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={createElement:function(t,e){var n=document.createElement(t);e&&Array.prototype.forEach.call(Object.keys(e),function(t){n.setAttribute(t,e[t])});for(var r=function t(e){Array.prototype.forEach.call(e,function(e){"string"==typeof e||"number"==typeof e?n.textContent+=e:Array.isArray(e)?t(e):"undefined"!=typeof e.__html?n.innerHTML+=e.__html:e instanceof Node&&n.appendChild(e)})},o=arguments.length,i=Array(o>2?o-2:0),a=2;a0?o:r)(t)}},function(t,e,n){"use strict";var r=n(45),o=n(16);t.exports=function(t){return r(o(t))}},function(t,e,n){"use strict";var r=0,o=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+o).toString(36))}},function(t,e,n){"use strict";t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,e,n){"use strict";var r=n(1),o=n(4),i=n(3),a=n(8),s=n(10),c="prototype",u=function t(e,n,u){var l,f,h,d,p=e&t.F,v=e&t.G,m=e&t.S,y=e&t.P,g=e&t.B,w=v?r:m?r[n]||(r[n]={}):(r[n]||{})[c],_=v?o:o[n]||(o[n]={}),b=_[c]||(_[c]={});v&&(u=n);for(l in u)f=!p&&w&&void 0!==w[l],h=(f?w:u)[l],d=g&&f?s(h,r):y&&"function"==typeof h?s(Function.call,h):h,w&&a(w,l,h,e&t.U),_[l]!=h&&i(_,l,d),y&&b[l]!=h&&(b[l]=h)};r.core=o,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},function(t,e,n){"use strict";t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e,n){"use strict";t.exports=n(1).document&&document.documentElement},function(t,e,n){"use strict";var r=n(28),o=n(24),i=n(8),a=n(3),s=n(6),c=n(7),u=n(48),l=n(18),f=n(54),h=n(0)("iterator"),d=!([].keys&&"next"in[].keys()),p="@@iterator",v="keys",m="values",y=function(){return this};t.exports=function(t,e,n,g,w,_,b){u(n,e,g);var E,S,x,k=function(t){if(!d&&t in L)return L[t];switch(t){case v:return function(){return new n(this,t)};case m:return function(){return new n(this,t)}}return function(){return new n(this,t)}},T=e+" Iterator",C=w==m,O=!1,L=t.prototype,M=L[h]||L[p]||w&&L[w],A=M||k(w),P=w?C?k("entries"):A:void 0,j="Array"==e?L.entries||M:M;if(j&&(x=f(j.call(new t)),x!==Object.prototype&&(l(x,T,!0),r||s(x,h)||a(x,h,y))),C&&M&&M.name!==m&&(O=!0,A=function(){return M.call(this)}),r&&!b||!d&&!O&&L[h]||a(L,h,A),c[e]=A,c[T]=y,w)if(E={values:C?A:k(m),keys:_?A:k(v),entries:P},b)for(S in E)S in L||i(L,S,E[S]);else o(o.P+o.F*(d||O),e,E);return E}},function(t,e,n){"use strict";t.exports=!1},function(t,e,n){"use strict";t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){"use strict";var r=n(1),o="__core-js_shared__",i=r[o]||(r[o]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,e,n){"use strict";var r,o,i,a=n(10),s=n(44),c=n(26),u=n(17),l=n(1),f=l.process,h=l.setImmediate,d=l.clearImmediate,p=l.MessageChannel,v=0,m={},y="onreadystatechange",g=function(){var t=+this;if(m.hasOwnProperty(t)){var e=m[t];delete m[t],e()}},w=function(t){g.call(t.data)};h&&d||(h=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return m[++v]=function(){s("function"==typeof t?t:Function(t),e)},r(v),v},d=function(t){delete m[t]},"process"==n(9)(f)?r=function(t){f.nextTick(a(g,t,1))}:p?(o=new p,i=o.port2,o.port1.onmessage=w,r=a(i.postMessage,i,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(r=function(t){l.postMessage(t+"","*")},l.addEventListener("message",w,!1)):r=y in u("script")?function(t){c.appendChild(u("script"))[y]=function(){c.removeChild(this),g.call(t)}}:function(t){setTimeout(a(g,t,1),0)}),t.exports={set:h,clear:d}},function(t,e,n){"use strict";var r=n(20),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=function(){function t(t,e){for(var n=0;n-1?e:t}function d(t,e){e=e||{};var n=e.body;if(t instanceof d){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new o(t.headers)),this.method=t.method,this.mode=t.mode,n||null==t._bodyInit||(n=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"omit",!e.headers&&this.headers||(this.headers=new o(e.headers)),this.method=h(e.method||this.method||"GET"),this.mode=e.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&n)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(n)}function p(t){var e=new FormData;return t.trim().split("&").forEach(function(t){if(t){var n=t.split("="),r=n.shift().replace(/\+/g," "),o=n.join("=").replace(/\+/g," ");e.append(decodeURIComponent(r),decodeURIComponent(o))}}),e}function v(t){var e=new o;return t.split(/\r?\n/).forEach(function(t){var n=t.split(":"),r=n.shift().trim();if(r){var o=n.join(":").trim();e.append(r,o)}}),e}function m(t,e){e||(e={}),this.type="default",this.status="status"in e?e.status:200,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new o(e.headers),this.url=e.url||"",this._initBody(t)}if(!t.fetch){var y={searchParams:"URLSearchParams"in t,iterable:"Symbol"in t&&"iterator"in Symbol,blob:"FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),formData:"FormData"in t,arrayBuffer:"ArrayBuffer"in t};if(y.arrayBuffer)var g=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],w=function(t){return t&&DataView.prototype.isPrototypeOf(t)},_=ArrayBuffer.isView||function(t){return t&&g.indexOf(Object.prototype.toString.call(t))>-1};o.prototype.append=function(t,r){t=e(t),r=n(r);var o=this.map[t];this.map[t]=o?o+","+r:r},o.prototype.delete=function(t){delete this.map[e(t)]},o.prototype.get=function(t){return t=e(t),this.has(t)?this.map[t]:null},o.prototype.has=function(t){return this.map.hasOwnProperty(e(t))},o.prototype.set=function(t,r){this.map[e(t)]=n(r)},o.prototype.forEach=function(t,e){for(var n in this.map)this.map.hasOwnProperty(n)&&t.call(e,this.map[n],n,this)},o.prototype.keys=function(){var t=[];return this.forEach(function(e,n){t.push(n)}),r(t)},o.prototype.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),r(t)},o.prototype.entries=function(){var t=[];return this.forEach(function(e,n){t.push([n,e])}),r(t)},y.iterable&&(o.prototype[Symbol.iterator]=o.prototype.entries);var b=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];d.prototype.clone=function(){return new d(this,{body:this._bodyInit})},f.call(d.prototype),f.call(m.prototype),m.prototype.clone=function(){return new m(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new o(this.headers),url:this.url})},m.error=function(){var t=new m(null,{status:0,statusText:""});return t.type="error",t};var E=[301,302,303,307,308];m.redirect=function(t,e){if(E.indexOf(e)===-1)throw new RangeError("Invalid status code");return new m(null,{status:e,headers:{location:t}})},t.Headers=o,t.Request=d,t.Response=m,t.fetch=function(t,e){return new Promise(function(n,r){var o=new d(t,e),i=new XMLHttpRequest;i.onload=function(){var t={status:i.status,statusText:i.statusText,headers:v(i.getAllResponseHeaders()||"")};t.url="responseURL"in i?i.responseURL:t.headers.get("X-Request-URL");var e="response"in i?i.response:i.responseText;n(new m(e,t))},i.onerror=function(){r(new TypeError("Network request failed"))},i.ontimeout=function(){r(new TypeError("Network request failed"))},i.open(o.method,o.url,!0),"include"===o.credentials&&(i.withCredentials=!0),"responseType"in i&&y.blob&&(i.responseType="blob"),o.headers.forEach(function(t,e){i.setRequestHeader(e,t)}),i.send("undefined"==typeof o._bodyInit?null:o._bodyInit)})},t.fetch.polyfill=!0}}("undefined"!=typeof self?self:void 0)},function(t,e,n){"use strict";(function(t){function r(e){new a.a.Event.Listener(document,"DOMContentLoaded",function(){if(!(document.body instanceof HTMLElement))throw new ReferenceError;i.a.attach(document.body),Modernizr.addTest("ios",function(){return!!navigator.userAgent.match(/(iPad|iPhone|iPod)/g)});var e=document.querySelectorAll("table:not([class])");if(Array.prototype.forEach.call(e,function(e){var n=t.createElement("div",{class:"md-typeset__scrollwrap"},t.createElement("div",{class:"md-typeset__table"}));e.nextSibling?e.parentNode.insertBefore(n,e.nextSibling):e.parentNode.appendChild(n),n.children[0].appendChild(e)}),Modernizr.ios){var n=document.querySelectorAll("[data-md-scrollfix]");Array.prototype.forEach.call(n,function(t){t.addEventListener("touchstart",function(){var e=t.scrollTop;0===e?t.scrollTop=1:e+t.offsetHeight===t.scrollHeight&&(t.scrollTop=e-1)})})}}).listen(),new a.a.Event.MatchMedia("(min-width: 1220px)",new a.a.Event.Listener(window,["scroll","resize","orientationchange"],new a.a.Header.Shadow("[data-md-component=container]","[data-md-component=header]"))),document.querySelector("[data-md-component=tabs]")&&new a.a.Event.Listener(window,["scroll","resize","orientationchange"],new a.a.Tabs.Toggle("[data-md-component=tabs]")).listen(),new a.a.Event.MatchMedia("(min-width: 1220px)",new a.a.Event.Listener(window,["scroll","resize","orientationchange"],new a.a.Sidebar.Position("[data-md-component=navigation]","[data-md-component=header]"))),document.querySelector("[data-md-component=toc]")&&new a.a.Event.MatchMedia("(min-width: 960px)",new a.a.Event.Listener(window,["scroll","resize","orientationchange"],new a.a.Sidebar.Position("[data-md-component=toc]","[data-md-component=header]"))),new a.a.Event.MatchMedia("(min-width: 960px)",new a.a.Event.Listener(window,"scroll",new a.a.Nav.Blur("[data-md-component=toc] [href]")));var n=document.querySelectorAll("[data-md-component=collapsible]");Array.prototype.forEach.call(n,function(t){new a.a.Event.MatchMedia("(min-width: 1220px)",new a.a.Event.Listener(t.previousElementSibling,"click",new a.a.Nav.Collapse(t)))}),new a.a.Event.MatchMedia("(max-width: 1219px)",new a.a.Event.Listener("[data-md-component=navigation] [data-md-toggle]","change",new a.a.Nav.Scrolling("[data-md-component=navigation] nav"))),new a.a.Event.MatchMedia("(max-width: 959px)",new a.a.Event.Listener("[data-md-toggle=search]","change",new a.a.Search.Lock("[data-md-toggle=search]"))),new a.a.Event.Listener("[data-md-component=query]",["focus","keyup","change"],new a.a.Search.Result("[data-md-component=result]",function(){return fetch(e.url.base+"/search/search_index.json",{credentials:"same-origin"}).then(function(t){return t.json()}).then(function(t){return t.docs.map(function(t){return t.location=e.url.base+t.location,t})})})).listen(),new a.a.Event.MatchMedia("(max-width: 959px)",new a.a.Event.Listener("[data-md-component=navigation] [href^='#']","click",function(){var t=document.querySelector("[data-md-toggle=drawer]");if(!(t instanceof HTMLInputElement))throw new ReferenceError;t.checked&&(t.checked=!1,t.dispatchEvent(new CustomEvent("change")))})),new a.a.Event.Listener("[data-md-component=reset]","click",function(){setTimeout(function(){var t=document.querySelector("[data-md-component=query]");if(!(t instanceof HTMLInputElement))throw new ReferenceError;t.focus()},10)}).listen(),new a.a.Event.Listener("[data-md-toggle=search]","change",function(t){setTimeout(function(t){if(!(t instanceof HTMLInputElement))throw new ReferenceError;if(t.checked){var e=document.querySelector("[data-md-component=query]");if(!(e instanceof HTMLInputElement))throw new ReferenceError;e.focus()}},400,t.target)}).listen(),new a.a.Event.MatchMedia("(min-width: 960px)",new a.a.Event.Listener("[data-md-component=query]","focus",function(){var t=document.querySelector("[data-md-toggle=search]");if(!(t instanceof HTMLInputElement))throw new ReferenceError;t.checked||(t.checked=!0,t.dispatchEvent(new CustomEvent("change")))})),new a.a.Event.MatchMedia("(min-width: 960px)",new a.a.Event.Listener(document.body,"click",function(){var t=document.querySelector("[data-md-toggle=search]");if(!(t instanceof HTMLInputElement))throw new ReferenceError;t.checked&&(t.checked=!1,t.dispatchEvent(new CustomEvent("change")))})),new a.a.Event.Listener(window,"keydown",function(t){var e=document.querySelector("[data-md-toggle=search]");if(!(e instanceof HTMLInputElement))throw new ReferenceError;var n=document.querySelector("[data-md-component=query]");if(!(n instanceof HTMLInputElement))throw new ReferenceError;if(e.checked){if(13===t.keyCode)n===document.activeElement&&t.preventDefault();else if(27===t.keyCode)e.checked=!1,e.dispatchEvent(new CustomEvent("change")),n.blur();else if([8,37,39].indexOf(t.keyCode)!==-1)n!==document.activeElement&&n.focus();else if([9,38,40].indexOf(t.keyCode)!==-1){var r=t.shiftKey?38:40,o=9===t.keyCode?r:t.keyCode,i=Array.prototype.slice.call(document.querySelectorAll("[data-md-component=search] [href]"));if(!i.length)return;var a=i.find(function(t){if(!(t instanceof HTMLElement))throw new ReferenceError;return"active"===t.dataset.mdState});a&&(a.dataset.mdState="");var s=Math.max(0,(i.indexOf(a)+i.length+(38===o?-1:1))%i.length);if(!(i[s]instanceof HTMLElement))throw new ReferenceError;return i[s].dataset.mdState="active",i[s].focus(),t.preventDefault(),t.stopPropagation(),!1}}else 70!==t.keyCode&&83!==t.keyCode||(n.focus(),t.preventDefault())}).listen(),new a.a.Event.Listener(window,"keypress",function(){var t=document.querySelector("[data-md-toggle=search]");if(!(t instanceof HTMLInputElement))throw new ReferenceError;if(t.checked){var e=document.querySelector("[data-md-component=query]");if(!(e instanceof HTMLInputElement))throw new ReferenceError;e!==document.activeElement&&e.focus()}}).listen(),new a.a.Event.MatchMedia("(min-width: 960px)",new a.a.Event.Listener("[data-md-toggle=search]","click",function(t){return t.stopPropagation()})),new a.a.Event.MatchMedia("(min-width: 960px)",new a.a.Event.Listener("[data-md-component=search]","click",function(t){return t.stopPropagation()})),function(){var t=document.querySelector("[data-md-source]");if(!t)return Promise.resolve([]);if(!(t instanceof HTMLAnchorElement))throw new ReferenceError;switch(t.dataset.mdSource){case"github":return new a.a.Source.Adapter.GitHub(t).fetch();default:return Promise.resolve([])}}().then(function(t){var e=document.querySelectorAll("[data-md-source]");Array.prototype.forEach.call(e,function(e){new a.a.Source.Repository(e).initialize(t)})})}Object.defineProperty(e,"__esModule",{value:!0});var o=n(71),i=n.n(o),a=n(74);n.d(e,"initialize",function(){return r})}).call(e,n(13))},function(t,e,n){"use strict";var r=n(0)("unscopables"),o=Array.prototype;void 0==o[r]&&n(3)(o,r,{}),t.exports=function(t){o[r][t]=!0}},function(t,e,n){"use strict";t.exports=function(t,e,n,r){if(!(t instanceof e)||void 0!==r&&r in t)throw TypeError(n+": incorrect invocation!");return t}},function(t,e,n){"use strict";var r=n(21),o=n(32),i=n(61);t.exports=function(t){return function(e,n,a){var s,c=r(e),u=o(c.length),l=i(a,u);if(t&&n!=n){for(;u>l;)if(s=c[l++],s!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}}},function(t,e,n){"use strict";var r=n(10),o=n(47),i=n(46),a=n(2),s=n(32),c=n(64),u={},l={},f=t.exports=function(t,e,n,f,h){var d,p,v,m,y=h?function(){return t}:c(t),g=r(n,f,e?2:1),w=0;if("function"!=typeof y)throw TypeError(t+" is not iterable!");if(i(y)){for(d=s(t.length);d>w;w++)if(m=e?g(a(p=t[w])[0],p[1]):g(t[w]),m===u||m===l)return m}else for(v=y.call(t);!(p=v.next()).done;)if(m=o(v,g,p.value,e),m===u||m===l)return m};f.BREAK=u,f.RETURN=l},function(t,e,n){"use strict";t.exports=!n(5)&&!n(25)(function(){return 7!=Object.defineProperty(n(17)("div"),"a",{get:function(){return 7}}).a})},function(t,e,n){"use strict";t.exports=function(t,e,n){var r=void 0===n;switch(e.length){case 0:return r?t():t.call(n);case 1:return r?t(e[0]):t.call(n,e[0]);case 2:return r?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return r?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return r?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},function(t,e,n){"use strict";var r=n(9);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,e,n){"use strict";var r=n(7),o=n(0)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},function(t,e,n){"use strict";var r=n(2);t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(e){var i=t.return;throw void 0!==i&&r(i.call(t)),e}}},function(t,e,n){"use strict";var r=n(52),o=n(29),i=n(18),a={};n(3)(a,n(0)("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},function(t,e,n){"use strict";var r=n(0)("iterator"),o=!1;try{var i=[7][r]();i.return=function(){o=!0},Array.from(i,function(){throw 2})}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],a=i[r]();a.next=function(){return{done:n=!0}},i[r]=function(){return a},t(i)}catch(t){}return n}},function(t,e,n){"use strict";t.exports=function(t,e){return{value:e,done:!!t}}},function(t,e,n){"use strict";var r=n(1),o=n(31).set,i=r.MutationObserver||r.WebKitMutationObserver,a=r.process,s=r.Promise,c="process"==n(9)(a);t.exports=function(){var t,e,n,u=function(){var r,o;for(c&&(r=a.domain)&&r.exit();t;){o=t.fn,t=t.next;try{o()}catch(r){throw t?n():e=void 0,r}}e=void 0,r&&r.enter()};if(c)n=function(){a.nextTick(u)};else if(i){var l=!0,f=document.createTextNode("");new i(u).observe(f,{characterData:!0}),n=function(){f.data=l=!l}}else if(s&&s.resolve){var h=s.resolve();n=function(){h.then(u)}}else n=function(){o.call(r,u)};return function(r){var o={fn:r,next:void 0};e&&(e.next=o),t||(t=o,n()),e=o}}},function(t,e,n){"use strict";var r=n(2),o=n(53),i=n(23),a=n(19)("IE_PROTO"),s=function(){},c="prototype",u=function(){var t,e=n(17)("iframe"),r=i.length,o="<",a=">";for(e.style.display="none",n(26).appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),u=t.F;r--;)delete u[c][i[r]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(s[c]=r(t),n=new s,s[c]=null,n[a]=t):n=u(),void 0===e?n:o(n,e)}},function(t,e,n){"use strict";var r=n(12),o=n(2),i=n(56);t.exports=n(5)?Object.defineProperties:function(t,e){o(t);for(var n,a=i(e),s=a.length,c=0;s>c;)r.f(t,n=a[c++],e[n]);return t}},function(t,e,n){"use strict";var r=n(6),o=n(62),i=n(19)("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},function(t,e,n){"use strict";var r=n(6),o=n(21),i=n(41)(!1),a=n(19)("IE_PROTO");t.exports=function(t,e){var n,s=o(t),c=0,u=[];for(n in s)n!=a&&r(s,n)&&u.push(n);for(;e.length>c;)r(s,n=e[c++])&&(~i(u,n)||u.push(n));return u}},function(t,e,n){"use strict";var r=n(55),o=n(23);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e,n){"use strict";var r=n(8);t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},function(t,e,n){"use strict";var r=n(1),o=n(12),i=n(5),a=n(0)("species");t.exports=function(t){var e=r[t];i&&e&&!e[a]&&o.f(e,a,{configurable:!0,get:function(){return this}})}},function(t,e,n){"use strict";var r=n(2),o=n(14),i=n(0)("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||void 0==(n=r(a)[i])?e:o(n)}},function(t,e,n){"use strict";var r=n(20),o=n(16);t.exports=function(t){return function(e,n){var i,a,s=String(o(e)),c=r(n),u=s.length;return c<0||c>=u?t?"":void 0:(i=s.charCodeAt(c),i<55296||i>56319||c+1===u||(a=s.charCodeAt(c+1))<56320||a>57343?t?s.charAt(c):i:t?s.slice(c,c+2):(i-55296<<10)+(a-56320)+65536)}}},function(t,e,n){"use strict";var r=n(20),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},function(t,e,n){"use strict";var r=n(16);t.exports=function(t){return Object(r(t))}},function(t,e,n){"use strict";var r=n(11);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e,n){"use strict";var r=n(15),o=n(0)("iterator"),i=n(7);t.exports=n(4).getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},function(t,e,n){"use strict";var r=n(39),o=n(50),i=n(7),a=n(21);t.exports=n(27)(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):"keys"==e?o(0,n):"values"==e?o(0,t[n]):o(0,[n,t[n]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(t,e,n){"use strict";var r=n(15),o={};o[n(0)("toStringTag")]="z",o+""!="[object z]"&&n(8)(Object.prototype,"toString",function(){return"[object "+r(this)+"]"},!0)},function(t,e,n){"use strict";var r,o,i,a=n(28),s=n(1),c=n(10),u=n(15),l=n(24),f=n(11),h=n(14),d=n(40),p=n(42),v=n(59),m=n(31).set,y=n(51)(),g="Promise",w=s.TypeError,_=s.process,b=s[g],_=s.process,E="process"==u(_),S=function(){},x=!!function(){try{var t=b.resolve(1),e=(t.constructor={})[n(0)("species")]=function(t){t(S,S)};return(E||"function"==typeof PromiseRejectionEvent)&&t.then(S)instanceof e}catch(t){}}(),k=function(t,e){return t===e||t===b&&e===i},T=function(t){var e;return!(!f(t)||"function"!=typeof(e=t.then))&&e},C=function(t){return k(b,t)?new O(t):new o(t)},O=o=function(t){var e,n;this.promise=new t(function(t,r){if(void 0!==e||void 0!==n)throw w("Bad Promise constructor");e=t,n=r}),this.resolve=h(e),this.reject=h(n)},L=function(t){try{t()}catch(t){return{error:t}}},M=function(t,e){if(!t._n){t._n=!0;var n=t._c;y(function(){for(var r=t._v,o=1==t._s,i=0,a=function(e){var n,i,a=o?e.ok:e.fail,s=e.resolve,c=e.reject,u=e.domain;try{a?(o||(2==t._h&&j(t),t._h=1),a===!0?n=r:(u&&u.enter(),n=a(r),u&&u.exit()),n===e.promise?c(w("Promise-chain cycle")):(i=T(n))?i.call(n,s,c):s(n)):c(r)}catch(t){c(t)}};n.length>i;)a(n[i++]);t._c=[],t._n=!1,e&&!t._h&&A(t)})}},A=function(t){m.call(s,function(){var e,n,r,o=t._v;if(P(t)&&(e=L(function(){E?_.emit("unhandledRejection",o,t):(n=s.onunhandledrejection)?n({promise:t,reason:o}):(r=s.console)&&r.error&&r.error("Unhandled promise rejection",o)}),t._h=E||P(t)?2:1),t._a=void 0,e)throw e.error})},P=function t(e){if(1==e._h)return!1;for(var n,r=e._a||e._c,o=0;r.length>o;)if(n=r[o++],n.fail||!t(n.promise))return!1;return!0},j=function(t){m.call(s,function(){var e;E?_.emit("rejectionHandled",t):(e=s.onrejectionhandled)&&e({promise:t,reason:t._v})})},R=function(t){var e=this;e._d||(e._d=!0,e=e._w||e,e._v=t,e._s=2,e._a||(e._a=e._c.slice()),M(e,!0))},N=function t(e){var n,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===e)throw w("Promise can't be resolved itself");(n=T(e))?y(function(){ -var o={_w:r,_d:!1};try{n.call(e,c(t,o,1),c(R,o,1))}catch(t){R.call(o,t)}}):(r._v=e,r._s=1,M(r,!1))}catch(t){R.call({_w:r,_d:!1},t)}}};x||(b=function(t){d(this,b,g,"_h"),h(t),r.call(this);try{t(c(N,this,1),c(R,this,1))}catch(t){R.call(this,t)}},r=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},r.prototype=n(57)(b.prototype,{then:function(t,e){var n=C(v(this,b));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=E?_.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&M(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),O=function(){var t=new r;this.promise=t,this.resolve=c(N,t,1),this.reject=c(R,t,1)}),l(l.G+l.W+l.F*!x,{Promise:b}),n(18)(b,g),n(58)(g),i=n(4)[g],l(l.S+l.F*!x,g,{reject:function(t){var e=C(this),n=e.reject;return n(t),e.promise}}),l(l.S+l.F*(a||!x),g,{resolve:function(t){if(t instanceof b&&k(t.constructor,this))return t;var e=C(this),n=e.resolve;return n(t),e.promise}}),l(l.S+l.F*!(x&&n(49)(function(t){b.all(t).catch(S)})),g,{all:function(t){var e=this,n=C(e),r=n.resolve,o=n.reject,i=L(function(){var n=[],i=0,a=1;p(t,!1,function(t){var s=i++,c=!1;n.push(void 0),a++,e.resolve(t).then(function(t){c||(c=!0,n[s]=t,--a||r(n))},o)}),--a||r(n)});return i&&o(i.error),n.promise},race:function(t){var e=this,n=C(e),r=n.reject,o=L(function(){p(t,!1,function(t){e.resolve(t).then(n.resolve,r)})});return o&&r(o.error),n.promise}})},function(t,e,n){"use strict";var r=n(60)(!0);n(27)(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})})},function(t,e,n){"use strict";for(var r=n(65),o=n(8),i=n(1),a=n(3),s=n(7),c=n(0),u=c("iterator"),l=c("toStringTag"),f=s.Array,h=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],d=0;d<5;d++){var p,v=h[d],m=i[v],y=m&&m.prototype;if(y){y[u]||a(y,u,f),y[l]||a(y,l,v),s[v]=f;for(p in r)y[p]||o(y,p,r[p],!0)}}},function(t,e,n){"use strict";var r=/[|\\{}()[\]^$+*?.]/g;t.exports=function(t){if("string"!=typeof t)throw new TypeError("Expected a string");return t.replace(r,"\\$&")}},function(t,e,n){"use strict";var r,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};!function(){function i(t,e){function n(t,e){return function(){return t.apply(e,arguments)}}var r;if(e=e||{},this.trackingClick=!1,this.trackingClickStart=0,this.targetElement=null,this.touchStartX=0,this.touchStartY=0,this.lastTouchIdentifier=0,this.touchBoundary=e.touchBoundary||10,this.layer=t,this.tapDelay=e.tapDelay||200,this.tapTimeout=e.tapTimeout||700,!i.notNeeded(t)){for(var o=["onMouse","onClick","onTouchStart","onTouchMove","onTouchEnd","onTouchCancel"],a=this,c=0,u=o.length;c=0,s=navigator.userAgent.indexOf("Android")>0&&!a,c=/iP(ad|hone|od)/.test(navigator.userAgent)&&!a,u=c&&/OS 4_\d(_\d)?/.test(navigator.userAgent),l=c&&/OS [6-7]_\d/.test(navigator.userAgent),f=navigator.userAgent.indexOf("BB10")>0;i.prototype.needsClick=function(t){switch(t.nodeName.toLowerCase()){case"button":case"select":case"textarea":if(t.disabled)return!0;break;case"input":if(c&&"file"===t.type||t.disabled)return!0;break;case"label":case"iframe":case"video":return!0}return/\bneedsclick\b/.test(t.className)},i.prototype.needsFocus=function(t){switch(t.nodeName.toLowerCase()){case"textarea":return!0;case"select":return!s;case"input":switch(t.type){case"button":case"checkbox":case"file":case"image":case"radio":case"submit":return!1}return!t.disabled&&!t.readOnly;default:return/\bneedsfocus\b/.test(t.className)}},i.prototype.sendClick=function(t,e){var n,r;document.activeElement&&document.activeElement!==t&&document.activeElement.blur(),r=e.changedTouches[0],n=document.createEvent("MouseEvents"),n.initMouseEvent(this.determineEventType(t),!0,!0,window,1,r.screenX,r.screenY,r.clientX,r.clientY,!1,!1,!1,!1,0,null),n.forwardedTouchEvent=!0,t.dispatchEvent(n)},i.prototype.determineEventType=function(t){return s&&"select"===t.tagName.toLowerCase()?"mousedown":"click"},i.prototype.focus=function(t){var e;c&&t.setSelectionRange&&0!==t.type.indexOf("date")&&"time"!==t.type&&"month"!==t.type?(e=t.value.length,t.setSelectionRange(e,e)):t.focus()},i.prototype.updateScrollParent=function(t){var e,n;if(e=t.fastClickScrollParent,!e||!e.contains(t)){n=t;do{if(n.scrollHeight>n.offsetHeight){e=n,t.fastClickScrollParent=n;break}n=n.parentElement}while(n)}e&&(e.fastClickLastScrollTop=e.scrollTop)},i.prototype.getTargetElementFromEventTarget=function(t){return t.nodeType===Node.TEXT_NODE?t.parentNode:t},i.prototype.onTouchStart=function(t){var e,n,r;if(t.targetTouches.length>1)return!0;if(e=this.getTargetElementFromEventTarget(t.target),n=t.targetTouches[0],c){if(r=window.getSelection(),r.rangeCount&&!r.isCollapsed)return!0;if(!u){if(n.identifier&&n.identifier===this.lastTouchIdentifier)return t.preventDefault(),!1;this.lastTouchIdentifier=n.identifier,this.updateScrollParent(e)}}return this.trackingClick=!0,this.trackingClickStart=t.timeStamp,this.targetElement=e,this.touchStartX=n.pageX,this.touchStartY=n.pageY,t.timeStamp-this.lastClickTimen||Math.abs(e.pageY-this.touchStartY)>n},i.prototype.onTouchMove=function(t){return!this.trackingClick||((this.targetElement!==this.getTargetElementFromEventTarget(t.target)||this.touchHasMoved(t))&&(this.trackingClick=!1,this.targetElement=null),!0)},i.prototype.findControl=function(t){return void 0!==t.control?t.control:t.htmlFor?document.getElementById(t.htmlFor):t.querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea")},i.prototype.onTouchEnd=function(t){var e,n,r,o,i,a=this.targetElement;if(!this.trackingClick)return!0;if(t.timeStamp-this.lastClickTimethis.tapTimeout)return!0;if(this.cancelNextClick=!1,this.lastClickTime=t.timeStamp,n=this.trackingClickStart,this.trackingClick=!1,this.trackingClickStart=0,l&&(i=t.changedTouches[0],a=document.elementFromPoint(i.pageX-window.pageXOffset,i.pageY-window.pageYOffset)||a,a.fastClickScrollParent=this.targetElement.fastClickScrollParent),r=a.tagName.toLowerCase(),"label"===r){if(e=this.findControl(a)){if(this.focus(a),s)return!1;a=e}}else if(this.needsFocus(a))return t.timeStamp-n>100||c&&window.top!==window&&"input"===r?(this.targetElement=null,!1):(this.focus(a),this.sendClick(a,t),c&&"select"===r||(this.targetElement=null,t.preventDefault()),!1);return!(!c||u||(o=a.fastClickScrollParent,!o||o.fastClickLastScrollTop===o.scrollTop))||(this.needsClick(a)||(t.preventDefault(),this.sendClick(a,t)),!1)},i.prototype.onTouchCancel=function(){this.trackingClick=!1,this.targetElement=null},i.prototype.onMouse=function(t){return!this.targetElement||(!!t.forwardedTouchEvent||(!t.cancelable||(!(!this.needsClick(this.targetElement)||this.cancelNextClick)||(t.stopImmediatePropagation?t.stopImmediatePropagation():t.propagationStopped=!0,t.stopPropagation(),t.preventDefault(),!1))))},i.prototype.onClick=function(t){var e;return this.trackingClick?(this.targetElement=null,this.trackingClick=!1,!0):"submit"===t.target.type&&0===t.detail||(e=this.onMouse(t),e||(this.targetElement=null),e)},i.prototype.destroy=function(){var t=this.layer;s&&(t.removeEventListener("mouseover",this.onMouse,!0),t.removeEventListener("mousedown",this.onMouse,!0),t.removeEventListener("mouseup",this.onMouse,!0)),t.removeEventListener("click",this.onClick,!0),t.removeEventListener("touchstart",this.onTouchStart,!1),t.removeEventListener("touchmove",this.onTouchMove,!1),t.removeEventListener("touchend",this.onTouchEnd,!1),t.removeEventListener("touchcancel",this.onTouchCancel,!1)},i.notNeeded=function(t){var e,n,r,o;if("undefined"==typeof window.ontouchstart)return!0;if(n=+(/Chrome\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1]){if(!s)return!0;if(e=document.querySelector("meta[name=viewport]")){if(e.content.indexOf("user-scalable=no")!==-1)return!0;if(n>31&&document.documentElement.scrollWidth<=window.outerWidth)return!0}}if(f&&(r=navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/),r[1]>=10&&r[2]>=3&&(e=document.querySelector("meta[name=viewport]")))){if(e.content.indexOf("user-scalable=no")!==-1)return!0;if(document.documentElement.scrollWidth<=window.outerWidth)return!0}return"none"===t.style.msTouchAction||"manipulation"===t.style.touchAction||(o=+(/Firefox\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1],!!(o>=27&&(e=document.querySelector("meta[name=viewport]"),e&&(e.content.indexOf("user-scalable=no")!==-1||document.documentElement.scrollWidth<=window.outerWidth)))||("none"===t.style.touchAction||"manipulation"===t.style.touchAction))},i.attach=function(t,e){return new i(t,e)},"object"===o(n(34))&&n(34)?(r=function(){return i}.call(e,n,e,t),!(void 0!==r&&(t.exports=r))):"undefined"!=typeof t&&t.exports?(t.exports=i.attach,t.exports.FastClick=i):window.FastClick=i}()},function(t,e,n){"use strict";var r,o,i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};!function(a){var s=!1;if(r=a,o="function"==typeof r?r.call(e,n,e,t):r,!(void 0!==o&&(t.exports=o)),s=!0,"object"===i(e)&&(t.exports=a(),s=!0),!s){var c=window.Cookies,u=window.Cookies=a();u.noConflict=function(){return window.Cookies=c,u}}}(function(){function t(){for(var t=0,e={};t1){if(i=t({path:"/"},r.defaults,i),"number"==typeof i.expires){var s=new Date;s.setMilliseconds(s.getMilliseconds()+864e5*i.expires),i.expires=s}try{a=JSON.stringify(o),/^[\{\[]/.test(a)&&(o=a)}catch(t){}return o=n.write?n.write(o,e):encodeURIComponent(String(o)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),e=encodeURIComponent(String(e)),e=e.replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent),e=e.replace(/[\(\)]/g,escape),document.cookie=[e,"=",o,i.expires?"; expires="+i.expires.toUTCString():"",i.path?"; path="+i.path:"",i.domain?"; domain="+i.domain:"",i.secure?"; secure":""].join("")}e||(a={});for(var c=document.cookie?document.cookie.split("; "):[],u=/(%[0-9A-Z]{2})+/g,l=0;ln.idx?n=n.next:(r+=e.val*n.val,e=e.next,n=n.next);return r},i.Vector.prototype.similarity=function(t){return this.dot(t)/(this.magnitude()*t.magnitude())},i.SortedSet=function(){this.length=0,this.elements=[]},i.SortedSet.load=function(t){var e=new this;return e.elements=t,e.length=t.length,e},i.SortedSet.prototype.add=function(){var t,e;for(t=0;t1;){if(i===t)return o;it&&(n=o),r=n-e,o=e+Math.floor(r/2),i=this.elements[o]}return i===t?o:-1},i.SortedSet.prototype.locationFor=function(t){for(var e=0,n=this.elements.length,r=n-e,o=e+Math.floor(r/2),i=this.elements[o];r>1;)it&&(n=o),r=n-e,o=e+Math.floor(r/2),i=this.elements[o];return i>t?o:io-1||r>a-1)break;s[n]!==c[r]?s[n]c[r]&&r++:(e.add(s[n]),n++,r++)}return e},i.SortedSet.prototype.clone=function(){var t=new i.SortedSet;return t.elements=this.toArray(),t.length=t.elements.length,t},i.SortedSet.prototype.union=function(t){var e,n,r;this.length>=t.length?(e=this,n=t):(e=t,n=this),r=e.clone();for(var o=0,i=n.toArray();o0&&(r=1+Math.log(this.documentStore.length/n)),this._idfCache[e]=r},i.Index.prototype.search=function(t){var e=this.pipeline.run(this.tokenizerFn(t)),n=new i.Vector,r=[],o=this._fields.reduce(function(t,e){return t+e.boost},0),a=e.some(function(t){return this.tokenStore.has(t)},this);if(!a)return[];e.forEach(function(t,e,a){var s=1/a.length*this._fields.length*o,c=this,u=this.tokenStore.expand(t).reduce(function(e,r){var o=c.corpusTokens.indexOf(r),a=c.idf(r),u=1,l=new i.SortedSet;if(r!==t){var f=Math.max(3,r.length-t.length);u=1/Math.log(f)}o>-1&&n.insert(o,s*a*u);for(var h=c.tokenStore.get(r),d=Object.keys(h),p=d.length,v=0;v=this.height_;t!==this.active_&&(this.header_.dataset.mdState=(this.active_=t)?"shadow":"")}},{key:"reset",value:function(){this.header_.dataset.mdState="",this.height_=0,this.active_=!1}}]),t}();e.a=i},function(t,e,n){"use strict";var r=n(80),o=n(81),i=n(82);e.a={Blur:r.a,Collapse:o.a,Scrolling:i.a}},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=function(){function t(t,e){for(var n=0;n0&&(this.els_[n-1].dataset.mdState="blur"),this.index_=n;else for(var r=this.index_;r>=0;r--){if(!(this.anchors_[r].offsetTop-80>t)){this.index_=r;break}r>0&&(this.els_[r-1].dataset.mdState="")}this.offset_=t,this.dir_=e}}},{key:"reset",value:function(){Array.prototype.forEach.call(this.els_,function(t){t.dataset.mdState=""}),this.index_=0,this.offset_=window.pageYOffset}}]),t}();e.a=i},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=function(){function t(t,e){for(var n=0;nn){for(;" "!==t[n]&&--n>0;);return t.substring(0,n)+"..."}return t}},{key:"update",value:function(e){var n=this;if("focus"!==e.type||this.index_){if("focus"===e.type||"keyup"===e.type){var r=e.target;if(!(r instanceof HTMLInputElement))throw new ReferenceError;if(!this.index_||r.value===this.value_)return;for(;this.list_.firstChild;)this.list_.removeChild(this.list_.firstChild);if(this.value_=r.value,0===this.value_.length)return void(this.meta_.textContent=this.message_.placeholder);var o=this.index_.search(this.value_).reduce(function(t,e){var r=n.docs_.get(e.ref);if(r.parent){var o=r.parent.location;t.set(o,(t.get(o)||[]).concat(e))}else{var i=r.location;t.set(i,t.get(i)||[])}return t},new Map),a=new RegExp("\\b("+i()(this.value_.trim()).replace(" ","|")+")","img"),u=function(t){return""+t+""};o.forEach(function(e,r){var o=n.docs_.get(r);n.list_.appendChild(t.createElement("li",{class:"md-search-result__item"},t.createElement("a",{href:o.location,title:o.title,class:"md-search-result__link"},t.createElement("article",{class:"md-search-result__article md-search-result__article--document"},t.createElement("h1",{class:"md-search-result__title"},{__html:o.title.replace(a,u)}),o.text.length?t.createElement("p",{class:"md-search-result__teaser"},{__html:o.text.replace(a,u)}):{})),e.map(function(e){var r=n.docs_.get(e.ref);return t.createElement("a",{href:r.location,title:r.title,class:"md-search-result__link","data-md-rel":"anchor"},t.createElement("article",{class:"md-search-result__article"},t.createElement("h1",{class:"md-search-result__title"},{__html:r.title.replace(a,u)}),r.text.length?t.createElement("p",{class:"md-search-result__teaser"},{__html:n.truncate_(r.text.replace(a,u),400)}):{}))})))});var l=this.list_.querySelectorAll("[data-md-rel=anchor]");switch(Array.prototype.forEach.call(l,function(t){t.addEventListener("click",function(e){var n=document.querySelector("[data-md-toggle=search]");if(!(n instanceof HTMLInputElement))throw new ReferenceError;n.checked&&(n.checked=!1,n.dispatchEvent(new CustomEvent("change"))),e.preventDefault(),setTimeout(function(){document.location.href=t.href},100)})}),o.size){case 0:this.meta_.textContent=this.message_.none;break;case 1:this.meta_.textContent=this.message_.one;break;default:this.meta_.textContent=this.message_.other.replace("#",o.size)}}}else{var f=function(t){n.index_=s()(function(){this.field("title",{boost:10}),this.field("text"),this.ref("location")}),n.docs_=t.reduce(function(t,e){var r=e.location.split("#"),o=c(r,2),i=o[0],a=o[1];return a&&(e.parent=t.get(i),e.parent&&!e.parent.done&&(e.parent.title=e.title,e.parent.text=e.text,e.parent.done=!0)),e.text=e.text.replace(/\n/g," ").replace(/\s+/g," ").replace(/\s+([,.:;!?])/g,function(t,e){return e}),e.parent&&e.parent.title===e.title||(n.index_.add(e),t.set(e.location,e)),t},new Map)};setTimeout(function(){return"function"==typeof n.data_?n.data_().then(f):f(n.data_)},250)}}}]),e}();e.a=l}).call(e,n(13))},function(t,e,n){"use strict";var r=n(87);e.a={Position:r.a}},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=function(){function t(t,e){for(var n=0;n=this.offset_?"lock"!==this.el_.dataset.mdState&&(this.el_.dataset.mdState="lock"):"lock"===this.el_.dataset.mdState&&(this.el_.dataset.mdState="")}},{key:"reset",value:function(){this.el_.dataset.mdState="",this.el_.style.height="",this.height_=0}}]),t}();e.a=i},function(t,e,n){"use strict";var r=n(89),o=n(92);e.a={Adapter:r.a,Repository:o.a}},function(t,e,n){"use strict";var r=n(91);e.a={GitHub:r.a}},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=n(72),i=n.n(o),a=function(){function t(t,e){for(var n=0;n1e4?(t/1e3).toFixed(0)+"k":t>1e3?(t/1e3).toFixed(1)+"k":""+t}},{key:"hash_",value:function(t){var e=0;if(0===t.length)return e;for(var n=0,r=t.length;n=this.offset_;t!==this.active_&&(this.el_.dataset.mdState=(this.active_=t)?"hidden":"")}},{key:"reset",value:function(){this.el_.dataset.mdState="",this.active_=!1}}]),t}();e.a=i},function(t,e,n){n(35),n(36),n(37),t.exports=n(38)}]); diff --git a/docs/edex/new-grid-grib1-old.md b/docs/edex/new-grid-grib1-old.md new file mode 100644 index 0000000000..433886e80b --- /dev/null +++ b/docs/edex/new-grid-grib1-old.md @@ -0,0 +1,279 @@ +# Ingest a New Grid Using .grib Files + +Unrecognized grids can be decoded by EDEX simply by dropping `*.grib` or `*.grib2` files into `/awips2/data_store/ingest/` + +To add support for a new grid, two edits must be made: + +* **Geospatial projection** must be defined in a [***grid navigation file***](#create-grid-projection-file) +* **Grid name**, **center**, **subcenter**, and **process ID** must be defined in a [***model definition file***](#create-model-definition) + +If the parameters in the grib file haven't been previously specified, another change *may* be needed as well: + +* **Center**, **subcenter**, **discipline**, **category**, and possibly **parameter ID** information may need to be defined in a [***table***](#adding-a-table) + +--- + +## Ingest an Unsupported Grid + +### Download Test Data + +Download an example grib1 file and rename to a `*.grib` extension, then copy to the manual ingest point `/awips2/data_store/ingest/` + + wget https://downloads.unidata.ucar.edu/awips2/current/files/14102318_nmm_d01.GrbF00600 -O wrf.grib + + cp wrf.grib /awips2/data_store/ingest/ + +Remember that the data distribution file (`/awips2/edex/data/utility/common_static/base/distribution/grib.xml`) will match filenames which have the `*.grib*` extension. + +### Check Grib Logs + +Confirm that the grib file decodes in the grib log file: + + edex log grib + + INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.1200 (sec) Latency: 21.8080 (sec) + INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.1180 (sec) Latency: 21.8140 (sec) + INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.4230 (sec) Latency: 21.8360 (sec) + INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.2240 (sec) Latency: 21.9140 (sec) + + ... + +### Check HDF5 Data + +Check that the hdf5 data directory exists for our unnamed grid + + ls -latr /awips2/edex/data/hdf5/grid/GribModel:7:0:89 + +Though the grib file has been decoded, it has been given a generic name with its center, subcenter, and process IDs (7, 0, 89, respectively). + +--- + +## Determine Grid Projection + +When the grid was ingested a record was added to the `grid_coverage` table with its navigation information: + + psql metadata + + metadata=# select nx,ny,dx,dy,majoraxis,minoraxis,la1,lo1,lov,latin1,latin2 from gridcoverage where id=(select distinct(location_id) from grid_info where datasetid='GribModel:7:0:89'); + nx | ny | dx | dy | majoraxis | minoraxis | la1 | lo1 | lov | latin1 | latin2 + -----+-----+------------------+------------------+-----------+-----------+------------------+-------------------+-------------------+------------------+------------------ + 201 | 155 | 4.29699993133545 | 4.29699993133545 | 6378160 | 6356775 | 42.2830009460449 | -72.3610000610352 | -67.0770034790039 | 45.3680000305176 | 45.3680000305176 + (1 row) + +Compare with the projection info returned by wgrib on the original file (look at the bolded sections below and make sure they match up with the corresponding entries returned from the database above): + +
+wgrib -V wrf.grib  
+rec 799:27785754:date 2014102318 ALBDO kpds5=84 kpds6=1 kpds7=0 levels=(0,0) grid=255 sfc 6hr fcst: bitmap: 736 undef
+  ALBDO=Albedo [%]
+  timerange 0 P1 6 P2 0 TimeU 1  nx 201 ny 155 GDS grid 3 num_in_ave 0 missing 0
+  center 7 subcenter 0 process 89 Table 2 scan: WE:SN winds(grid) 
+  Lambert Conf: Lat1 42.283000 Lon1 -72.361000 Lov -67.077000
+      Latin1 45.368000 Latin2 45.368000 LatSP 0.000000 LonSP 0.000000
+      North Pole (201 x 155) Dx 4.297000 Dy 4.297000 scan 64 mode 8
+  min/max data 5 21.9  num bits 8  BDS_Ref 50  DecScale 1 BinScale 0
+
+ +Notice that our grib file has a **Lambert Conformal** projection. We will need these values for the next step. + +!!! note "**There is a tolerance of +/- 0.1 degrees** to keep in mind when defining your coverage area." + +--- + +## Create Grid Projection File + +### Projection Types + +Grid projection files are stored in `/awips2/edex/data/utility/common_static/base/grib/grids/` and there are four grid coverage types available: + +1. **lambertConformalGridCoverage** (example: `RUCIcing.xml`) + + + 305 + Regional - CONUS (Lambert Conformal) + 16.322 + -125.955 + LowerLeft + 151 + 113 + 40.63525 + 40.63525 + km + 6356775.0 + 6378160.0 + -95.0 + 25.0 + 25.0 + + +2. **polarStereoGridCoverage** (example `seaice_south1_grid.xml`) + + + 405 + Sea Ice south 690X710 13km grid + -36.866 + 139.806 + LowerLeft + 690 + 710 + 12.7 + 12.7 + km + 6371229.0 + 6371229.0 + 100.0 + + +3. **latLonGridCoverage** (example `UkmetHR-SHemisphere.xml`) + + + 864162002 + UKMet HiRes combined - Southern Hemisphere + Longitude range 71.25E - 70.416E + -89.721 + 71.25 + LowerLeft + 864 + 162 + 0.833 + 0.556 + degree + -0.278 + 70.416 + + +4. **mercatorGridCoverage** (example `gridNBM_PR.xml`) + + + NBM_PR + National Blend Grid over Puerto Rico - (1.25 km) + 16.9775 + -68.0278 + LowerLeft + 339 + 225 + 1.25 + 1.25 + 19.3750032477232 + -63.984399999999994 + 20 + km + 6371200 + 6371200 + + +### Creating a New Projection File + +Copy an existing xml file with the same grid projection type (in this case **lambertConformalGridCoverage**) to a new file `wrf.xml`: + + cd /awips2/edex/data/utility/common_static/base/grib/grids/ + cp RUCIcing.xml wrf.xml + +And edit the new `wrf.xml` to define the projection values using the [output from wgrib or the database](#determine-grid-projection) (example provided): + + vi wrf.xml + + + 201155 + Regional - CONUS (Lambert Conformal) + 42.2830009460449 + -72.3610000610352 + LowerLeft + 201 + 155 + 4.29699993133545 + 4.29699993133545 + km + 6356775.0 + 6378160.0 + -67.0770034790039 + 45.3680000305176 + 45.3680000305176 + + +!!! note "Notice the `201155` tag was created by using the number of grid points (201 and 155). This name can be anything as long as it is unique and will be used to match against in the model definition." + +--- + +## Create Model Definition + +Model definition XML files are found in **/awips2/edex/data/utility/common_static/base/grib/models/**. + +Since our grib file has a center ID of 7 (NCEP) we will edit the **gribModels_NCEP-7.xml** file. + + cd /awips2/edex/data/utility/common_static/base/grib/models/ + + vi gribModels_NCEP-7.xml + +In `` add an entry: + + + WRF +
7
+ 0 + 201155 + + 89 + +
+ +Save the file and restart EDEX for the changes to take effect: + + sudo service edex_camel restart ingestGrib + +Now copy the `wrf.grib` file *again* to **/awips2/data_store/ingest/**. If everything is correct we will not see any persistence errors since the grid is now named **WRF** and not **GribModel:7:0:89**. + + cp wrf.grib /awips2/data_store/ingest/ + + edex log grib + +After you have confirmed that the grid was ingested with the given name, you can [edit the D2D product menus to display the new grid](../cave/d2d-edit-menus.md). + +--- + +## Adding a Table + +If you ingest a piece of data and the parameter appears as unknown in the metadata database, ensure that the correct parameter tables are in place for the center/subcenter. + +The tables are located in **/awips2/edex/data/utility/common_static/base/grib/tables/**. They are then broken into subdirectories using the following structure: **/[Center]/[Subcenter]/4.2.[Discipine].[Category].table**. + +The center and subcenter have been identified previously [here](#determine-grid-projection), as 7 and 0, respectively. So, the corresponding directory is: + + /awips2/edex/data/utility/common_static/base/grib/tables/7/0/ + +To find the **discipline** of a grib product, you need the **process** and **table** values from the grib file. These are output with the `wgrib -V` command: + +
+wgrib -V wrf.grib  
+rec 799:27785754:date 2014102318 ALBDO kpds5=84 kpds6=1 kpds7=0 levels=(0,0) grid=255 sfc 6hr fcst: bitmap: 736 undef
+  ALBDO=Albedo [%]
+  timerange 0 P1 6 P2 0 TimeU 1  nx 201 ny 155 GDS grid 3 num_in_ave 0 missing 0
+  center 7 subcenter 0 process 89 Table 2 scan: WE:SN winds(grid) 
+  Lambert Conf: Lat1 42.283000 Lon1 -72.361000 Lov -67.077000
+      Latin1 45.368000 Latin2 45.368000< LatSP 0.000000 LonSP 0.000000
+      North Pole (201 x 155) Dx 4.297000 Dy 4.297000 scan 64 mode 8
+  min/max data 5 21.9  num bits 8  BDS_Ref 50  DecScale 1 BinScale 0
+
+ +For our example, the process is **89** and table is **2**. Next, take a look in: + + /awips2/edex/data/utility/common_static/base/grid/grib1ParameterConvTable.xml + +And find the entry that has grib1 data with TableVersion 2 and Value 89: + + +
7
+ 2 + 89 + 0 + 3 + 10 +
+ +Here, we can see the discipline and category values (referred to as x above) are 0 and 3, respectively. + +So, the table needed for our example file is: + + /awips2/edex/data/utility/common_static/base/grib/tables/7/0/4.2.0.3.table diff --git a/docs/edex/new-grid.md b/docs/edex/new-grid.md index dcfe813c2f..4122022802 100644 --- a/docs/edex/new-grid.md +++ b/docs/edex/new-grid.md @@ -2,6 +2,8 @@ Unrecognized grids can be decoded by EDEX simply by dropping `*.grib` or `*.grib2` files into `/awips2/data_store/ingest/` +!!! note "This page explains how to ingest `.grib2` products. To view information about `.grib` products, [please see this page](../new-grid-grib1-old)." + To add support for a new grid, two edits must be made: * **Geospatial projection** must be defined in a [***grid navigation file***](#create-grid-projection-file) @@ -15,113 +17,57 @@ If the parameters in the grib file haven't been previously specified, another ch ## Ingest an Unsupported Grid -### Grib Products +### Download Test Data -1. Download an example grib1 file and rename to a `*.grib` extension, then copy to the manual ingest point `/awips2/data_store/ingest/` +Download an example grib2 file (make sure the extension is `.grib2` or the [EDEX distribution file](../data-distribution-files/#editing-an-edex-data-distribution-file) may not recognize it), and then copy to the manual ingest point `/awips2/data_store/ingest/`: - wget https://downloads.unidata.ucar.edu/awips2/current/files/14102318_nmm_d01.GrbF00600 -O wrf.grib + wget https://downloads.unidata.ucar.edu/awips2/current/files/CPTI_00.50_20180502-000144.grib2 -O cpti.grib2 + + cp cpti.grib2 /awips2/data_store/ingest/ + +### Check Grib Logs + +Confirm that the grib file decodes in the grib log file. - cp wrf.grib /awips2/data_store/ingest/ +Look in the current log file (/awips2/edex/logs/edex-ingestGrib-[YYYYMMDD].log) for the following: + + INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.1200 (sec) Latency: 21.8080 (sec) + INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.1180 (sec) Latency: 21.8140 (sec) + INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.4230 (sec) Latency: 21.8360 (sec) + INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.2240 (sec) Latency: 21.9140 (sec) - Remember that the data distribution file (`/awips2/edex/data/utility/common_static/base/distribution/grib.xml`) will match filenames which have the `*.grib*` extension. - -2. Confirm that the grib file decodes in the grib log file: + ... - edex log grib +!!! warning "This step will fail for our example because the parameter is not yet defined. The error will look like:" + +
+INFO  2020-07-20 20:34:17,710 2565 [GribPersist-1] GridDao: EDEX - Discarding record due to missing or unknown parameter mapping: /grid/2018-05-02_00:01:44.0_(0)/GribModel:161:0:97/null/null/403/Missing/FH/500.0/-999999.0
+INFO  2020-07-20 20:34:17,710 2566 [GribPersist-1] Ingest: EDEX: Ingest - grib2:: /awips2/data_store/ingest/CPTI_00.50_20180502-000144.grib2 processed in: 2.3550 (sec)
+INFO  2020-07-20 20:34:17,827 2567 [Ingest.GribDecode-6] grib: EDEX - No parameter information for center[161], subcenter[0], tableName[4.2.209.3], parameter value[61]
+
- INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.1200 (sec) Latency: 21.8080 (sec) - INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.1180 (sec) Latency: 21.8140 (sec) - INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.4230 (sec) Latency: 21.8360 (sec) - INFO [Ingest.GribDecode] /awips2/data_store/ingest/grib/20141026/14/wrf.grib processed in: 0.2240 (sec) Latency: 21.9140 (sec) - - ... +In order to successfully ingest the example file, you must [**define the appropriate table**](#adding-a-table). -3. Check that the hdf5 data directory exists for our unnamed grid +### Check HDF5 Data - ls -latr /awips2/edex/data/hdf5/grid/GribModel:7:0:89 - - Though the grib file has been decoded, it has been given a generic name with its center, subcenter, and process IDs (7, 0, 89, respectively). - -### Grib2 Products - -1. Download an example grib2 file and rename to a `*.grib2` extension, then copy to the manual ingest point `/awips2/data_store/ingest/` - - wget https://downloads.unidata.ucar.edu/awips2/current/files/CPTI_00.50_20180502-000144.grib2 -O cpti.grib2 - - cp cpti.grib2 /awips2/data_store/ingest/ - - Remember that the data distribution file (`/awips2/edex/data/utility/common_static/base/distribution/grib.xml`) will match filenames which have the `*.grib*` extension. - -2. Confirm that the grib file decodes in the grib log file: - - edex log grib - - INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.1200 (sec) Latency: 21.8080 (sec) - INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.1180 (sec) Latency: 21.8140 (sec) - INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.4230 (sec) Latency: 21.8360 (sec) - INFO [Ingest.GribDecode] /awips2/data_store/ingest/cpti.grib2 processed in: 0.2240 (sec) Latency: 21.9140 (sec) - - ... - - **Note:** This step will likely fail, because the parameter is not yet defined. The error will look like: - - INFO 2020-07-20 20:34:17,710 2565 [GribPersist-1] GridDao: EDEX - Discarding record due to missing or unknown parameter mapping: /grid/2018-05-02_00:01:44.0_(0)/GribModel:161:0:97/null/null/403/Missing/FH/500.0/-999999.0 - INFO 2020-07-20 20:34:17,710 2566 [GribPersist-1] Ingest: EDEX: Ingest - grib2:: /awips2/data_store/ingest/CPTI_00.50_20180502-000144.grib2 processed in: 2.3550 (sec) - INFO 2020-07-20 20:34:17,827 2567 [Ingest.GribDecode-6] grib: EDEX - No parameter information for center[161], subcenter[0], tableName[4.2.209.3], parameter value[61] - - In order to successfully ingest the example file, [**define the appropriate table**](#grib2-products_4). - -3. Check that the hdf5 data directory exists for our unnamed grid +Check that the hdf5 data directory exists for our unnamed grid ls -latr /awips2/edex/data/hdf5/grid/GribModel:161:0:97 - Though the grib file has been decoded, it has been given a generic name with its center, subcenter, and process IDs (161, 0, 97, respectively). +Though the grib file has been decoded, it has been given a generic name with its **center, subcenter, and process IDs** (161, 0, 97, respectively). --- ## Determine Grid Projection -### Grib Products - -When the grid was ingested a record was added to the `grid_coverage` table with its navigation information: +When a grid is ingested a record is added to the `grid_coverage` table with its navigation information: psql metadata - - metadata=# select nx,ny,dx,dy,majoraxis,minoraxis,la1,lo1,lov,latin1,latin2 from gridcoverage where id=(select distinct(location_id) from grid_info where datasetid='GribModel:7:0:89'); - nx | ny | dx | dy | majoraxis | minoraxis | la1 | lo1 | lov | latin1 | latin2 - -----+-----+------------------+------------------+-----------+-----------+------------------+-------------------+-------------------+------------------+------------------ - 201 | 155 | 4.29699993133545 | 4.29699993133545 | 6378160 | 6356775 | 42.2830009460449 | -72.3610000610352 | -67.0770034790039 | 45.3680000305176 | 45.3680000305176 - (1 row) - -Compare with the projection info returned by wgrib on the original file (look at the bolded sections below and make sure they match up with the corresponding entries returned from the database above): - -
-wgrib -V wrf.grib  
-rec 799:27785754:date 2014102318 ALBDO kpds5=84 kpds6=1 kpds7=0 levels=(0,0) grid=255 sfc 6hr fcst: bitmap: 736 undef
-  ALBDO=Albedo [%]
-  timerange 0 P1 6 P2 0 TimeU 1  nx 201 ny 155 GDS grid 3 num_in_ave 0 missing 0
-  center 7 subcenter 0 process 89 Table 2 scan: WE:SN winds(grid) 
-  Lambert Conf: Lat1 42.283000 Lon1 -72.361000 Lov -67.077000
-      Latin1 45.368000 Latin2 45.368000 LatSP 0.000000 LonSP 0.000000
-      North Pole (201 x 155) Dx 4.297000 Dy 4.297000 scan 64 mode 8
-  min/max data 5 21.9  num bits 8  BDS_Ref 50  DecScale 1 BinScale 0
-
- -Notice that our grib file has a **Lambert Conformal** projection. We will need these values for the next step. Note that **there is a tolerance of +/- 0.1 degrees** to keep in mind when defining your coverage area. - -### Grib2 Products - -When the grid was ingested a record was added to the `grid_coverage` table with its navigation information: - - psql metadata - - metadata=# select nx,ny,dx,dy,majoraxis,minoraxis,la1,lo1,lov,latin1,latin2 from gridcoverage where id=(select distinct(location_id) from grid_info where datasetid='GribModel:161:0:97'); - - nx | ny | dx | dy | majoraxis | minoraxis | la1 | lo1 | lov | latin1 | latin2 - -----+-----+-------+-------+-----------+-----------+-----------+-----+-----+--------+-------- - 600 | 640 | 0.005 | 0.005 | | | 40.799999 | 261 | | | + + metadata=> select nx,ny,dx,dy,majoraxis,minoraxis,la1,lo1,lov,latin1,latin2,spacingunit,lad,la2,latin,lo2,firstgridpointcorner from gridcoverage where id=(select distinct(location_id) from grid_info where datasetid='GribModel:161:0:97'); + nx | ny | dx | dy | majoraxis | minoraxis | la1 | lo1 | lov | latin1 | latin2 | spacingunit | lad | la2 | latin | lo2 | firstgridpointcorner + -----+-----+-------+-------+-----------+-----------+-----------+-----+-----+--------+--------+-------------+-----+-----+-------+-----+---------------------- + 600 | 640 | 0.005 | 0.005 | | | 40.799999 | 261 | | | | degree | | | | | UpperLeft (1 row) Compare with the projection info returned by wgrib2 on the original file (look at the bolded sections below and make sure they match up with the corresponding entries returned from the database above): - - - - - - diff --git a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satFog.xml b/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satFog.xml deleted file mode 100644 index 423d6a2e18..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satFog.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - diff --git a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satMoisture.xml b/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satMoisture.xml deleted file mode 100644 index 43c1083b1d..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satMoisture.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - diff --git a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satSnow.xml b/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satSnow.xml deleted file mode 100644 index 40a43b9bb2..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satSnow.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - diff --git a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satUpperLevelInfo.xml b/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satUpperLevelInfo.xml deleted file mode 100644 index b744b3b91c..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satUpperLevelInfo.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - diff --git a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satVegetation.xml b/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satVegetation.xml deleted file mode 100644 index 06c9b39e38..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.satellite/utility/common_static/base/derivedParameters/definitions/satVegetation.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/phensigColors.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/phensigColors.xml index 9a975628ab..849f301767 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/phensigColors.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/phensigColors.xml @@ -1,8 +1,6 @@ - AF.W - AF.Y AQ.Y AS.O AS.Y @@ -15,6 +13,7 @@ CF.Y CF.S DS.W + DS.Y DU.Y EC.A EC.W diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.grid/utility/common_static/base/bundles/grid/Visibility.xml b/edexOsgi/com.raytheon.uf.edex.plugin.grid/utility/common_static/base/bundles/grid/Visibility.xml new file mode 100644 index 0000000000..ece6f2faf1 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.plugin.grid/utility/common_static/base/bundles/grid/Visibility.xml @@ -0,0 +1,98 @@ + + + + + + + PLAN_VIEW + + + + + + + + + 0.0 + 10.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PLAN_VIEW + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ${frameCount} + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.grid/utility/common_static/base/menus/grid/lampFamilies.xml b/edexOsgi/com.raytheon.uf.edex.plugin.grid/utility/common_static/base/menus/grid/lampFamilies.xml index 70d6592ccd..83d7cf3d71 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.grid/utility/common_static/base/menus/grid/lampFamilies.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.grid/utility/common_static/base/menus/grid/lampFamilies.xml @@ -37,6 +37,9 @@ + + @@ -49,4 +52,4 @@ - \ No newline at end of file + diff --git a/environment.yml b/environment.yml index 16af9a0daf..045efdab18 100755 --- a/environment.yml +++ b/environment.yml @@ -6,6 +6,6 @@ dependencies: - python=3.8 - pip - pip: - - mkdocs==0.17.5 - - mkdocs-unidata==1.5.7 + - mkdocs + - mkdocs-unidata - fontawesome_markdown diff --git a/localization/utility/common_static/site/MRX/radar/radarsInUse.txt b/localization/utility/common_static/site/MRX/radar/radarsInUse.txt index ac1983374b..4417b093da 100644 --- a/localization/utility/common_static/site/MRX/radar/radarsInUse.txt +++ b/localization/utility/common_static/site/MRX/radar/radarsInUse.txt @@ -1,6 +1,6 @@ # DO NOT EDIT LINES BEGINNING WITH '#' # LOCAL_RADARS (including terminal) - MUST HAVE THIS LINE -mkrx +kmrx # DIAL_RADARS - MUST HAVE THIS LINE diff --git a/mkdocs.yml b/mkdocs.yml index de485a72dd..3d508393a9 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,5 +1,5 @@ site_name: Unidata AWIPS User Manual -site_url: http://unidata.github.io/awips2 +site_url: http://unidata.github.io/awips2/ site_description: Documentation for all things AWIPS. site_author: support-awips@unidata.ucar.edu theme: @@ -27,85 +27,83 @@ extra: link: https://twitter.com/Unidata - type: facebook link: https://facebook.com/Unidata + logo: 'images/home.png' -pages: -- Home: index.md -- Install CAVE: install/install-cave.md -- Install EDEX: install/install-edex.md -- Common Problems: install/common-problems.md -- CAVE User Manual: - - D2D Perspective: cave/d2d-perspective.md - - Maps, Views, Projections: cave/maps-views-projections.md - - Displays and Procedures: cave/bundles-and-procedures.md - - Localization Perspective: cave/localization-perspective.md -# - NCP Perspective: cave/ncp-perspective.md - - NSHARP: cave/nsharp.md - - WarnGen Walkthrough: cave/warngen.md - - GOES 16/17: cave/goes-16-17-satellite.md - - GIS and Shapefiles: cave/d2d-gis-shapefiles.md - - Volume Browser: cave/d2d-gridded-models.md - - Display Tools: cave/d2d-tools.md - - Radar Tools: cave/d2d-radar-tools.md - - Editing Menus: cave/d2d-edit-menus.md - - Change Localization: cave/cave-localization.md - - Import/Export: cave/import-export.md -- EDEX User Manual: - - EDEX Basic Commands: install/start-edex.md - - EDEX Settings: edex/settings.md - - Distributed EDEX: edex/distributed-computing.md - - Docker EDEX: edex/edex-ingest-docker-container.md - - LDM Feeds: edex/ldm.md - - Data Distribution Files: edex/data-distribution-files.md - - Ingest a New Grid: edex/new-grid.md - - Purging and Retention: edex/data-purge.md - - Monitor Users: edex/edex-users.md - - Data Plugins: edex/data-plugins.md - - Archive Case Studies: edex/case-studies.md -- Python-AWIPS: python/overview.md -- Educational Resources: appendix/educational-resources.md -#- Hazard Services: -# - CAVE Display: cave/hazard-services-display.md -# - Hazard Creation: cave/hazard-services-create.md -# - Hazard Alerts: cave/hazard-services-alert.md -# - Hazard Settings: cave/hazard-services-settings.md -# - Examples: cave/hazard-services-example.md -# - Supported Data Types: -# - Gridded Model Display: cave/d2d-grids.md -# - Surface Obs: cave/d2d-pointdata-surface-obs.md -# - Satellite Imagery: cave/d2d-satellite.md -# - NEXRAD Radar: cave/d2d-radar.md -# - Upper Air: cave/d2d-uair.md -# - NCEP/Hydro: cave/d2d-hydro.md -# - Map Overlays: cave/d2d-map-resources.md -- Development: dev/awips-development-environment.md - # - Overview: python/python-awips-data-access.md - # - AWIPS Grids and Cartopy: python/awips-grids-and-cartopy.md - # - Satellite Imagery: python/satellite-imagery.md - # - NEXRAD Level 3 Radar: python/nexrad-level-3-radar.md - # - Upper air BUFR Soundings: python/upper-air-bufr-soundings.md - # - Model Sounding Data: python/model-sounding-data.md - # - Map Resources and Topography: python/map-resources-and-topography.md - # - Surface Obs Plot with MetPy: python/surface-obs-plot-metpy.md -- Appendix: - - AWIPS Grid Parameters: appendix/appendix-grid-parameters.md - - Maps Database: python/maps-database.md - - Acronyms and Abbreviations: appendix/appendix-acronyms.md - # - COTS and FOSS: appendix/appendix-cots.md - - WSR-88D Product Table: appendix/appendix-wsr88d.md - - Keyboard Shortcuts: cave/cave-keyboard-shortcuts.md - - "Raytheon: CAVE User's Manual": raytheon/cave_d2d.md - - "Raytheon: AWIPS System Manager's Manual": raytheon/smm.md +nav: + - Home: index.md + - Install CAVE: install/install-cave.md + - Install EDEX: install/install-edex.md + - Common Problems: appendix/common-problems.md + - CAVE User Manual: + - D2D Perspective: cave/d2d-perspective.md + - Maps, Views, Projections: cave/maps-views-projections.md + - Displays and Procedures: cave/bundles-and-procedures.md + - Localization Perspective: cave/localization-perspective.md + # - NCP Perspective: cave/ncp-perspective.md + - NSHARP: cave/nsharp.md + - WarnGen Walkthrough: cave/warngen.md + - GOES 16/17: cave/goes-16-17-satellite.md + - GIS and Shapefiles: cave/d2d-gis-shapefiles.md + - Volume Browser: cave/d2d-gridded-models.md + - Display Tools: cave/d2d-tools.md + - Radar Tools: cave/d2d-radar-tools.md + - Editing Menus: cave/d2d-edit-menus.md + - Change Localization: cave/cave-localization.md + - Import/Export: cave/import-export.md + - EDEX User Manual: + - EDEX Basic Commands: install/start-edex.md + - EDEX Settings: edex/settings.md + - Distributed EDEX: edex/distributed-computing.md + - Docker EDEX: edex/edex-ingest-docker-container.md + - LDM Feeds: edex/ldm.md + - Data Distribution Files: edex/data-distribution-files.md + - Ingest a New Grid: edex/new-grid.md + - Purging and Retention: edex/data-purge.md + - Monitor Users: edex/edex-users.md + - Data Plugins: edex/data-plugins.md + - Archive Case Studies: edex/case-studies.md + - Python-AWIPS: python/overview.md + - Educational Resources: appendix/educational-resources.md + #- Hazard Services: + # - CAVE Display: cave/hazard-services-display.md + # - Hazard Creation: cave/hazard-services-create.md + # - Hazard Alerts: cave/hazard-services-alert.md + # - Hazard Settings: cave/hazard-services-settings.md + # - Examples: cave/hazard-services-example.md + # - Supported Data Types: + # - Gridded Model Display: cave/d2d-grids.md + # - Surface Obs: cave/d2d-pointdata-surface-obs.md + # - Satellite Imagery: cave/d2d-satellite.md + # - NEXRAD Radar: cave/d2d-radar.md + # - Upper Air: cave/d2d-uair.md + # - NCEP/Hydro: cave/d2d-hydro.md + # - Map Overlays: cave/d2d-map-resources.md + - Development: dev/awips-development-environment.md + # - Overview: python/python-awips-data-access.md + # - AWIPS Grids and Cartopy: python/awips-grids-and-cartopy.md + # - Satellite Imagery: python/satellite-imagery.md + # - NEXRAD Level 3 Radar: python/nexrad-level-3-radar.md + # - Upper air BUFR Soundings: python/upper-air-bufr-soundings.md + # - Model Sounding Data: python/model-sounding-data.md + # - Map Resources and Topography: python/map-resources-and-topography.md + # - Surface Obs Plot with MetPy: python/surface-obs-plot-metpy.md + - Appendix: + - AWIPS Grid Parameters: appendix/appendix-grid-parameters.md + - Maps Database: python/maps-database.md + - Acronyms and Abbreviations: appendix/appendix-acronyms.md + # - COTS and FOSS: appendix/appendix-cots.md + - WSR-88D Product Table: appendix/appendix-wsr88d.md + - Keyboard Shortcuts: cave/cave-keyboard-shortcuts.md + - "Raytheon: CAVE User's Manual": raytheon/cave_d2d.md + - "Raytheon: AWIPS System Manager's Manual": raytheon/smm.md extra_css: - css/extra.css -extra_javascript: - - assets/javascripts/application-0b7df094bf.js - markdown_extensions: - fontawesome_markdown: - toc: permalink:  - admonition: -copyright: Copyright © 2020 Unidata Program Center. +copyright: Copyright © 2022 Unidata Program Center. diff --git a/rpms/awips2.core/Installer.database/configuration/postgresql.conf b/rpms/awips2.core/Installer.database/configuration/postgresql.conf index c010f7802d..8b6bdd2c09 100644 --- a/rpms/awips2.core/Installer.database/configuration/postgresql.conf +++ b/rpms/awips2.core/Installer.database/configuration/postgresql.conf @@ -304,11 +304,11 @@ logging_collector = on # Enable capturing of stderr and csvlog # These are only used if logging_collector is on: log_directory = 'pg_log' # directory where log files are written, # can be absolute or relative to PGDATA -log_filename = 'postgresql-%A.log' # log file name pattern, +log_filename = 'postgresql-%F.log' # log file name pattern, # can include strftime() escapes #log_file_mode = 0600 # creation mode for log files, # begin with 0 to use octal notation -log_truncate_on_rotation = on # If on, an existing log file with the +log_truncate_on_rotation = off # If on, an existing log file with the # same name as the new log file will be # truncated rather than appended to. # But such truncation only occurs on diff --git a/rpms/awips2.edex/Installer.edex/ndm/MTR.goodness b/rpms/awips2.edex/Installer.edex/ndm/MTR.goodness index c53409cd5f..2cafd71016 100644 --- a/rpms/awips2.edex/Installer.edex/ndm/MTR.goodness +++ b/rpms/awips2.edex/Installer.edex/ndm/MTR.goodness @@ -418,16 +418,17 @@ 0 K0E0 34.9856 -106.0095 1889 500 0 K0F2 33.6017 -97.7756 336 500 0 K0J4 31.0425 -86.3116 96 500 - 0 K0J6 31.36413 -85.31252 109 500 0 K0R0 31.2970 -89.8128 81 500 0 K0R4 31.56200 -91.50647 17 500 0 K0S9 48.0538 -122.8106 34 2500 0 K0V4 37.1417 -79.0164 182 2500 0 K0VG 36.65408 -83.21783 430 500 + 0 K10G 40.53670 -81.95594 374 500 0 K11R 30.219 -96.374 94 500 0 K12N 41.01 -74.74 178 15000 0 K13K 37.85161 -96.29203 368 500 0 K14Y 45.8986 -94.8739 406 500 + 0 K15M 34.77333 -88.16608 191 500 0 K18A 34.3404 -83.1308 271 2500 0 K17J 31.00697 -84.87761 45 500 0 K19S 37.49686 -100.83292 887 500 @@ -758,6 +759,7 @@ 72791 KAST 46.1570 -123.8820 7 9949 0 KASW 41.275 -85.84 259 500 0 KASX 46.55 -90.92 252 500 + 0 KATA 33.10253 -94.19503 85 500 72219 KATL 33.6600 -84.4200 315 26703 0 KATP 27.195 -90.027 -0 500 0 KATS 32.8500 -104.4700 1081 11801 @@ -1546,6 +1548,7 @@ 0 KHCR 40.48181 -111.42881 1718 500 0 KHDC 30.52 -90.42 13 500 0 KHDE 40.4500 -99.3300 705 20770 + 0 KHDL 31.36413 -85.31252 109 500 0 KHDN 40.5100 -107.2500 2012 7363 0 KHDO 29.3600 -99.1600 283 16687 0 KHEF 38.7210 -77.5151 59 7808 @@ -1616,7 +1619,6 @@ 0 KHST 25.4800 -80.3800 2 2758 72323 KHSV 34.6600 -86.7700 196 16914 72638 KHTL 44.3800 -84.6800 351 17816 - 0 KHTO 40.9800 -72.2500 17 1304 72425 KHTS 38.3800 -82.5500 255 27896 0 KHUA 34.679 -86.685 209 500 0 KHUF 39.4600 -87.3000 181 10201 @@ -1628,6 +1630,7 @@ 72777 KHVR 48.5500 -109.7700 789 14606 0 KHVS 34.4031 -80.1192 111 500 0 KHWD 37.6600 -122.1200 15 7752 + 0 KHWV 40.82195 -72.86691 25 500 0 KHWY 38.5863 -77.7106 102 500 0 KHXD 32.22 -80.70 6 500 0 KHYA 41.6800 -70.2800 16 11122 @@ -1748,6 +1751,7 @@ 0 KJNX 35.541 -78.390 50 500 0 KJOT 41.52 -88.18 177 500 0 KJPD 44.14661 -107.17438 -0 500 + 0 KJPX 40.9800 -72.2500 17 1304 0 KJQF 35.39 -80.71 210 500 0 KJRB 40.70121 -74.00903 2 500 0 KJSO 31.869 -95.217 206 500 @@ -2724,6 +2728,7 @@ 0 KTQE 41.7600 -96.1800 313 9745 0 KTQH 35.93 -95.00 266 500 0 KTQK 38.47503 -100.88444 905 500 + 0 KTQV 36.00704 -78.93733 157 500 0 KTRI 36.4800 -82.4000 474 22134 0 KTRK 39.3200 -120.13956 1798 2487 0 KTRL 32.7100 -96.2700 145 15592 diff --git a/rpms/awips2.edex/Installer.edex/ndm/afos2awips.txt b/rpms/awips2.edex/Installer.edex/ndm/afos2awips.txt index a2a5f166b2..4684a31c17 100644 --- a/rpms/awips2.edex/Installer.edex/ndm/afos2awips.txt +++ b/rpms/awips2.edex/Installer.edex/ndm/afos2awips.txt @@ -2102,6 +2102,7 @@ ARBSVSMQT WWUS53 KMQT ARBTAFAPN FTUS43 KAPX ARBTAFAZO FTUS43 KGRR ARBTAFBTL FTUS43 KGRR +ARBTAFCIU FTUS43 KAPX ARBTAFCMX FTUS43 KMQT ARBTAFDET FTUS43 KDTX ARBTAFDTW FTUS43 KDTX @@ -2741,7 +2742,6 @@ BHMHCMMOB NGUS84 KMOB BHMHDPMOB AGUS44 KMOB BHMHLSBMX WTUS84 KBMX BHMHLSMOB WTUS84 KMOB -BHMHMDNWC AGUS73 KOWP BHMHMLBMX SRUS54 KBMX BHMHMLMOB SRUS54 KMOB BHMHMWAL WOUS44 KBMX @@ -2953,6 +2953,7 @@ BHMTAFBFM FTUS44 KMOB BHMTAFBHM FTUS44 KBMX BHMTAFDHN FTUS42 KTAE BHMTAFEET FTUS44 KBMX +BHMTAFJKA FTUS44 KMOB BHMTAFMGM FTUS44 KBMX BHMTAFMOB FTUS44 KMOB BHMTAFMSL FTUS44 KBMX @@ -8342,36 +8343,54 @@ FTWCAEFWD WOUS44 KFWD FTWCDWFWD WOUS44 KFWD FTWCEMFWD WOUS44 KFWD FTWCF60F2 CXUS54 KFWD +FTWCF66P9 CXUS54 KFWD FTWCF6ACT CXUS54 KFWD +FTWCF6ADS CXUS54 KFWD FTWCF6AFW CXUS54 KFWD +FTWCF6BKD CXUS54 KFWD +FTWCF6CNW CXUS54 KFWD FTWCF6CPT CXUS54 KFWD FTWCF6CRS CXUS54 KFWD FTWCF6DAL CXUS54 KFWD FTWCF6DFW CXUS54 KFWD FTWCF6DTO CXUS54 KFWD +FTWCF6ETN CXUS54 KFWD +FTWCF6F00 CXUS54 KFWD FTWCF6F44 CXUS54 KFWD FTWCF6F46 CXUS54 KFWD FTWCF6FTW CXUS54 KFWD FTWCF6FWD CXUS54 KFWD +FTWCF6FWS CXUS54 KFWD FTWCF6GDJ CXUS54 KFWD FTWCF6GKY CXUS54 KFWD FTWCF6GLE CXUS54 KFWD FTWCF6GOP CXUS54 KFWD +FTWCF6GPM CXUS54 KFWD +FTWCF6GRK CXUS54 KFWD FTWCF6GVT CXUS54 KFWD FTWCF6GYI CXUS54 KFWD +FTWCF6GZN CXUS54 KFWD +FTWCF6HLR CXUS54 KFWD +FTWCF6HQZ CXUS54 KFWD FTWCF6ILE CXUS54 KFWD FTWCF6INJ CXUS54 KFWD FTWCF6JWY CXUS54 KFWD FTWCF6LHB CXUS54 KFWD +FTWCF6LNC CXUS54 KFWD FTWCF6LUD CXUS54 KFWD +FTWCF6LXY CXUS54 KFWD +FTWCF6LZZ CXUS54 KFWD FTWCF6MKN CXUS54 KFWD +FTWCF6MNZ CXUS54 KFWD FTWCF6MWL CXUS54 KFWD +FTWCF6NFW CXUS54 KFWD FTWCF6PRX CXUS54 KFWD FTWCF6PSN CXUS54 KFWD FTWCF6PWG CXUS54 KFWD FTWCF6RBD CXUS54 KFWD FTWCF6RPH CXUS54 KFWD FTWCF6SEP CXUS54 KFWD +FTWCF6SLR CXUS54 KFWD FTWCF6T35 CXUS54 KFWD FTWCF6TKI CXUS54 KFWD FTWCF6TPL CXUS54 KFWD @@ -9475,6 +9494,7 @@ GUMDMOGU WOGM40 PGUM GUMDPAGUA SDUS80 PGUM GUMDSMGSN CDUS27 KZHN GUMDSMGUM CDUS27 KZHN +GUMDSMXXH CXGM40 PGUM GUMDSWGUM WEGM40 PGUM GUMDSYGUM WEGM40 PGUM GUMEQWGUM WOGM40 PGUM @@ -9559,8 +9579,10 @@ GUMMANTTP USKA40 PTTP GUMMONMSG NTXX98 PGUM GUMMSMGSN CSUS27 KZHN GUMMSMGUM CSUS27 KZHN +GUMMSMXXH CSGM40 PGUM GUMMTRGUM SAGM31 PGUM GUMMTRSGM SPGM31 PGUM +GUMMTRXXH SAGM40 PGUM GUMMTRXXX SAKA31 PGUM GUMMWSGUM FZMY70 PGUM GUMMWSKMR FZMH70 PKMR @@ -9624,7 +9646,9 @@ GUMRFWPQ WWPQ80 PGUM GUMRHWGUM WOGM40 PGUM GUMRHWGU WOGM40 PGUM GUMRR6GUM SRGM60 PGUM +GUMRR6XXH SRGM60 PGUM GUMRR7GUM SRGM70 PGUM +GUMRR7XXH SRGM70 PGUM GUMRR8GUM SRGM80 PGUM GUMRTPGUM ASGM60 PGUM GUMRTPPQ ASPQ60 PGUM @@ -11343,7 +11367,9 @@ LAXCF6RNM CXUS56 KSGX LAXCF6SAN CXUS56 KSGX LAXCF6SBA CXUS56 KLOX LAXCF6SBD CXUS56 KLOX +LAXCF6SDB CXUS56 KLOX LAXCF6SDM CXUS56 KSGX +LAXCF6SMO CXUS56 KLOX LAXCF6SMX CXUS56 KLOX LAXCF6SNA CXUS56 KSGX LAXCF6TRM CXUS56 KSGX @@ -16438,6 +16464,11 @@ NEWCF6TYR CXUS54 KSHV NEWCFWLCH WHUS44 KLCH NEWCFWLIX WHUS44 KLIX NEWCGRLCH SXUS84 KLCH +NEWCLABTR CXUS54 KLIX +NEWCLAGPT CXUS54 KLIX +NEWCLAMCB CXUS54 KLIX +NEWCLAMSY CXUS54 KLIX +NEWCLANEW CXUS54 KLIX NEWCLIAEX CDUS44 KLCH NEWCLIARA CDUS44 KLCH NEWCLIBTR CDUS44 KLIX @@ -16461,6 +16492,11 @@ NEWCLMMLU CXUS54 KSHV NEWCLMMSY CXUS54 KLIX NEWCLMNEW CXUS54 KLIX NEWCLMSHV CXUS54 KSHV +NEWCLSBTR CXUS54 KLIX +NEWCLSGPT CXUS54 KLIX +NEWCLSMCB CXUS54 KLIX +NEWCLSMSY CXUS54 KLIX +NEWCLSNEW CXUS54 KLIX NEWCMMSHV CSUS54 KSHV NEWCRFFFC FGUS54 KORN NEWCRFFWD FGUS54 KORN @@ -17171,6 +17207,8 @@ NMC24AS21 FBSA22 KWBC NMC24AS23 FBSA24 KWBC NMC24AU11 FBUS12 KWBC NMC5TCNMC AUUS03 KWBC +NMCADMNWC NOUS74 KWCO +NMCAHDNWC AGUS74 KWCO NMCAPGASN FKUS02 KWBC NMCAPGASN FKUS2 KWBC NMCARP03 UANT01 KWBC @@ -17764,6 +17802,7 @@ NMCFWOVEF SHUS65 KMWI NMCGPHHX6 PTNT98 KWBC NMCGPHHX8 PTNR98 KWBC NMCMAVAFC FOAK38 KWNO +NMCHMDNWC AGUS74 KWCO NMCMAVAFG FOAK39 KWNO NMCMAVAJK FOAK37 KWNO NMCMAVCND FOCN20 KWNO @@ -21527,14 +21566,9 @@ PITRVFJAA FGUS51 KRHA PITRVFLDE FGUS51 KRHA PITRVFLSQ FGUS51 KRHA PITRVFMDE FGUS51 KRHA -PITRVFNJ1 FGUS51 KRHA -PITRVFNY1 FGUS51 KRHA -PITRVFNY2 FGUS51 KRHA -PITRVFPA2 FGUS51 KRHA PITRVFPOT FGUS51 KRHA PITRVFPSC FGUS51 KRHA PITRVFRTN FGUS51 KRHA -PITRVFSUQ FGUS51 KRHA PITRVFUDE FGUS51 KRHA PITRVFUSQ FGUS51 KRHA PITRVSPBZ FGUS81 KPBZ @@ -22536,6 +22570,7 @@ RNOCEMREV WOUS45 KREV RNOCEMVEF WOUS45 KVEF RNOCF6BIH CXUS55 KVEF RNOCF6DAG CXUS55 KVEF +RNOCF6DVF CXUS55 KVEF RNOCF6EED CXUS55 KVEF RNOCF6EKO CXUS55 KLKN RNOCF6ELY CXUS55 KLKN @@ -22544,16 +22579,20 @@ RNOCF6LAS CXUS55 KVEF RNOCF6RNO CXUS55 KREV RNOCF6TPH CXUS55 KLKN RNOCF6WMC CXUS55 KLKN +RNOCLADVF CXUS55 KVEF +RNOCLIDVF CDUS45 KVEF RNOCLIEKO CDUS45 KLKN RNOCLIELY CDUS45 KLKN RNOCLILAS CDUS45 KVEF RNOCLIRNO CDUS45 KREV RNOCLIWMC CDUS45 KLKN +RNOCLMDVF CXUS55 KVEF RNOCLMEKO CXUS55 KLKN RNOCLMELY CXUS55 KLKN RNOCLMLAS CXUS55 KVEF RNOCLMRNO CXUS55 KREV RNOCLMWMC CXUS55 KLKN +RNOCLSDVF CXUS55 KVEF RNOCMMRNO CSUS55 KREV RNOCMMTVL CSUS55 KREV RNOCMMWMC CSUS55 KLKN @@ -24348,6 +24387,7 @@ SEADPAOTX SDUS86 KOTX SEADSMBFI CXUS46 KSEW SEADSMEAT CXUS46 KOTX SEADSMGEG CXUS46 KOTX +SEADSMNRA CXUS46 KSEW SEADSMOLM CXUS46 KSEW SEADSMPDT CXUS46 KPDT SEADSMSEA CXUS46 KSEW @@ -24440,6 +24480,7 @@ SEAMISZSE AXUS46 KSEW SEAMSMBFI CSUS46 KSEW SEAMSMEAT CSUS46 KOTX SEAMSMGEG CSUS46 KOTX +SEAMSMNRA CSUS46 KSEW SEAMSMSEA CSUS46 KSEW SEAMSMUIL CSUS46 KSEW SEAMSMYKM CSUS46 KPDT @@ -24521,9 +24562,11 @@ SEARR4YKM SRUS56 KPDT SEARR5OTX SRUS56 KOTX SEARR5SEW SRUS56 KSEW SEARR5YKM SRUS56 KPDT +SEARR6NRA SRUS66 KSEW SEARR6OTX SRUS66 KOTX SEARR6SEW SRUS66 KSEW SEARR6YKM SRUS66 KPDT +SEARR7NRA SRUS76 KSEW SEARR7OTX SRUS76 KOTX SEARR7SEW SRUS76 KSEW SEARR7SHN SRUS76 KSEW @@ -25808,7 +25851,6 @@ SJUTAFJBQ FTUS42 TJSJ SJUTAFJMZ FTUS42 TJSJ SJUTAFJPS FTUS42 TJSJ SJUTAFJSJ FTUS42 TJSJ -SJUTAFKPK FTUS42 TJSJ SJUTCPSP1 WTCA41 TJSJ SJUTCPSP2 WTCA42 TJSJ SJUTCPSP3 WTCA43 TJSJ diff --git a/rpms/awips2.edex/Installer.edex/ndm/afosMasterPIL.txt b/rpms/awips2.edex/Installer.edex/ndm/afosMasterPIL.txt index 651ecac79b..39f2f4b3f7 100644 --- a/rpms/awips2.edex/Installer.edex/ndm/afosMasterPIL.txt +++ b/rpms/awips2.edex/Installer.edex/ndm/afosMasterPIL.txt @@ -2143,6 +2143,7 @@ ARBSVSMQT ARBTAFAPN ARBTAFAZO ARBTAFBTL +ARBTAFCIU ARBTAFCMX ARBTAFDET ARBTAFDTW @@ -2783,7 +2784,6 @@ BHMHCMBMX BHMHCMMOB BHMHLSBMX BHMHLSMOB -BHMHMDNWC BHMHMLBMX BHMHMLMOB BHMHMWAL @@ -2818,7 +2818,6 @@ BHMMSMNPA BHMMSMNSE BHMMSMPRN BHMMTR0J4 -BHMMTR0J6 BHMMTR1A9 BHMMTR1M4 BHMMTR1R8 @@ -2847,6 +2846,7 @@ BHMMTREKY BHMMTREUF BHMMTRGAD BHMMTRGZH +BHMMTRHDL BHMMTRHEY BHMMTRHRT BHMMTRJFX @@ -3005,6 +3005,7 @@ BHMTAFBHM BHMTAFDHN BHMTAFEET BHMTAFHRT +BHMTAFJKA BHMTAFMGM BHMTAFMOB BHMTAFMXF @@ -5634,6 +5635,7 @@ CLEMSMERI CLEMSMTDZ CLEMSMTOL CLEMSMYNG +CLEMTR10G CLEMTR4I3 CLEMTRAKR CLEMTRAOH @@ -8959,32 +8961,50 @@ FTWBLUFWD FTWCAEFWD FTWCDWFWD FTWCEMFWD +FTWCF66P9 FTWCF6ACT +FTWCF6ADS FTWCF6AFW +FTWCF6BKD +FTWCF6CNW FTWCF6CRS FTWCF6DAL FTWCF6DFW FTWCF6DTO +FTWCF6ETN +FTWCF6F00 FTWCF6FTW FTWCF6FWS +FTWCF6FWS FTWCF6GDJ FTWCF6GKY FTWCF6GLE FTWCF6GPM +FTWCF6GPM +FTWCF6GRK FTWCF6GVT FTWCF6GYT +FTWCF6GZN +FTWCF6HLR +FTWCF6HQZ FTWCF6HQZ FTWCF6ILE FTWCF6INJ FTWCF6JWY FTWCF6LNC +FTWCF6LNC FTWCF6LUD +FTWCF6LXY +FTWCF6LZZ +FTWCF6MNZ FTWCF6MWL +FTWCF6NFW FTWCF6PRX FTWCF6PWG FTWCF6RBD FTWCF6RPH FTWCF6SEP +FTWCF6SLR FTWCF6TKI FTWCF6TPL FTWCF6TRL @@ -9157,6 +9177,7 @@ FTWMTRACT FTWMTRADS FTWMTRAFW FTWMTRASL +FTWMTRATA FTWMTRBKD FTWMTRBWD FTWMTRCNW @@ -10012,6 +10033,7 @@ GUMDMOGU GUMDMOGUM GUMDSMGSN GUMDSMGUM +GUMDSMXXH GUMDSWGUM GUMDSYGUM GUMEQWGU @@ -10103,6 +10125,7 @@ GUMMANTKR GUMMANTTP GUMMSMGSN GUMMSMGUM +GUMMSMXXH GUMMTRGRO GUMMTRGSN GUMMTRGUA @@ -10131,6 +10154,7 @@ GUMMTRTRO GUMMTRTSA GUMMTRTTP GUMMTRTYA +GUMMTRXXH GUMMWSGUM GUMMWSKMR GUMMWSMY @@ -10194,7 +10218,9 @@ GUMRHWGU GUMRHWGUM GUMRR5GUM GUMRR6GUM +GUMRR6XXH GUMRR7GUM +GUMRR7XXH GUMRR8GUM GUMRRSGUM GUMRTPGUM @@ -19363,6 +19389,7 @@ MEMMSMTYS MEMMTR01M MEMMTR0A9 MEMMTR0VG +MEMMTR15M MEMMTR1M5 MEMMTR2A0 MEMMTR2M2 @@ -32707,6 +32734,11 @@ NEWCF6TYR NEWCFWLCH NEWCFWLIX NEWCGRLCH +NEWCLABTR +NEWCLAGPT +NEWCLAMCB +NEWCLAMSY +NEWCLANEW NEWCLIAEX NEWCLIARA NEWCLIBTR @@ -32730,6 +32762,11 @@ NEWCLMMLU NEWCLMMSY NEWCLMNEW NEWCLMSHV +NEWCLSBTR +NEWCLSGPT +NEWCLSMCB +NEWCLSMSY +NEWCLSNEW NEWCMMSHV NEWCRFFFC NEWCRFFWD @@ -33353,9 +33390,11 @@ NMC24AU11 NMCADANMC NMCADMAN1 NMCADMAN2 +NMCADMNWC NMCADMAN3 NMCADMCE1 NMCADMNMC +NMCAHDNWC NMCAPGASN NMCARP01 NMCARP02 @@ -33557,6 +33596,7 @@ NMCFWOTSA NMCFWOTWC NMCFWOUNR NMCFWOVEF +NMCHMDNWC NMCNAHNMC NMCOCD01 NMCOCD02 @@ -33773,11 +33813,11 @@ NYCMTRFOK NYCMTRFRG NYCMTRGON NYCMTRHPN -NYCMTRHTO NYCMTRHVN NYCMTRHWV NYCMTRISP NYCMTRJFK +NYCMTRJPX NYCMTRJRB NYCMTRLDJ NYCMTRLGA @@ -37040,14 +37080,9 @@ PITRVFJAA PITRVFLDE PITRVFLSQ PITRVFMDE -PITRVFNJ1 -PITRVFNY1 -PITRVFNY2 -PITRVFPA2 PITRVFPOT PITRVFPSC PITRVFRTN -PITRVFSUQ PITRVFUDE PITRVFUSQ PITRVSPBZ @@ -37999,6 +38034,7 @@ RDUMTRSCR RDUMTRSOP RDUMTRSUT RDUMTRTDF +RDUMTRTQV RDUMTRTTA RDUMTRUDG RDUMTRVUJ @@ -38277,6 +38313,7 @@ RNOCEMREV RNOCEMVEF RNOCF6BIH RNOCF6DAG +RNOCF6DVF RNOCF6EED RNOCF6EKO RNOCF6ELY @@ -38287,6 +38324,7 @@ RNOCF6RNO RNOCF6TPH RNOCF6TVL RNOCF6WMC +RNOCLADVF RNOCLAEKO RNOCLAELY RNOCLALAS @@ -38295,6 +38333,7 @@ RNOCLARNO RNOCLATPH RNOCLATVL RNOCLAWMC +RNOCLIDVF RNOCLIEKO RNOCLIELY RNOCLILAS @@ -38303,6 +38342,7 @@ RNOCLIRNO RNOCLITPH RNOCLITVL RNOCLIWMC +RNOCLMDVF RNOCLMEKO RNOCLMELY RNOCLMLAS @@ -38311,6 +38351,7 @@ RNOCLMRNO RNOCLMTPH RNOCLMTVL RNOCLMWMC +RNOCLSDVF RNOCLSEKO RNOCLSELY RNOCLSP68 @@ -40246,6 +40287,7 @@ SEADMOWA SEADSMBFI SEADSMEAT SEADSMGEG +SEADSMNRA SEADSMOLM SEADSMPDT SEADSMSEA @@ -40338,6 +40380,7 @@ SEAMISZSE SEAMSMBFI SEAMSMEAT SEAMSMGEG +SEAMSMNRA SEAMSMSEA SEAMSMUIL SEAMSMYKM @@ -40447,10 +40490,12 @@ SEARR5OTX SEARR5SEW SEARR5YKM SEARR6GEG +SEARR6NRA SEARR6OTX SEARR6SEW SEARR6YKM SEARR7GEG +SEARR7NRA SEARR7OTX SEARR7SEW SEARR7SHN @@ -41770,7 +41815,6 @@ SJUTAFISX SJUTAFJBQ SJUTAFJMZ SJUTAFJPS -SJUTAFKPK SJUTAFSJU SJUTCPSP1 SJUTCPSP2 diff --git a/rpms/awips2.edex/Installer.edex/ndm/maritimeStationInfo.txt b/rpms/awips2.edex/Installer.edex/ndm/maritimeStationInfo.txt index 339388d9bc..0de50a9b4c 100644 --- a/rpms/awips2.edex/Installer.edex/ndm/maritimeStationInfo.txt +++ b/rpms/awips2.edex/Installer.edex/ndm/maritimeStationInfo.txt @@ -45,6 +45,9 @@ 0000000000|41047| 27.47 | -71.49 | 0|NE of Bahamas |US|BOY 0000000000|41048| 31.98 | -69.65 | 0|W of Bermuda |US|BOY 0000000000|41049| 27.5 | -62.94 | 0|Atlantic (South) |US|BOY +0000000000|41065| 32.802| -79.619| 0|CAP2WAVE, Capers Nearshore Waves |US|BOY +0000000000|41066| 32.536| -79.660| 0|19 NM SE Charleston, SC Harbor CORMP|US|BOY +0000000000|41076| 32.536| -79.659| 0|CHR60WAVE |US|BOY 0000000000|41108| 33.721| -78.015| 0|Wilmington Harbor NC Scripps |US|BOY 0000000000|41110| 34.141| -77.709| -0|Masonboro Inlet, NC CORMP |US|BOY 0000000000|41112| 30.72 | -81.29 | 0|Kings Bay, GA(132) |US|BOY @@ -226,6 +229,7 @@ 0000000000|45183| 49.538| -65.71 | 0|Mount Louis Environment Canada |US|BOY 0000000000|45186| 42.368| -87.795| 176|Waukegan, IL, U of IL |US|BOY 0000000000|45187| 42.491| -87.779| 176|Winthrop Harbor, IL, U of IL |US|BOY +0000000000|45198| 41.892| -87.563| 176|Chicago Pier, IL, U of IL |US|BOY 0000000000|46001| 56.23 |-147.90 | 0|DN25 /D GULF OF AK |US|BOY 0000000000|46002| 42.527|-130.260| 0|6N04 /D OREGON |US|BOY 0000000000|46004| 50.93 |-136.10 | -0|Middle Nomad |CN|BOY diff --git a/rpms/awips2.edex/Installer.edex/ndm/metarStationInfo.txt b/rpms/awips2.edex/Installer.edex/ndm/metarStationInfo.txt index 1b7a5c99e3..0b163e71aa 100644 --- a/rpms/awips2.edex/Installer.edex/ndm/metarStationInfo.txt +++ b/rpms/awips2.edex/Installer.edex/ndm/metarStationInfo.txt @@ -961,18 +961,19 @@ 0000000000|K0E0 | 34.986|-106.009| 1889|Moriarty Muni, Moriarty, NM |US|MTR 0000000000|K0F2 | 33.602| -97.776| 336|Bowie Muni, Bowie, TX |US|MTR 0000000000|K0J4 | 31.042| -86.312| 96|Florala Muni, AL |US|MTR -0000000000|K0J6 | 31.36413|-85.31252| 109|Headland Muni AP, Headland, AL |US|MTR 0000000000|K0R0 | 31.2970| -89.8128| 81|Columbia-Marion Cnty AP, Columbia,MS|US|MTR 0000000000|K0R4 | 31.56200| -91.50647| 17|Concordia Parish AP, Vidalia, LA |US|MTR 0000000000|K0S9 | 48.0538|-122.8106| 34|Jefferson Co Int, Port Townsend, WA |US|MTR 0000000000|K0V4 | 37.1417| -79.0164| 182|Brookn/Campbell AP, Brookneal, VA |US|MTR 0000000000|K0VG | 36.6541| -83.2178| 430|Lee Cnty AP, Jonesville, VA |US|MTR 0000000000|K0W8 | 37.94 | -75.39 | 2|CHINCOTEAGUE, VA |US|MTR +0000000000|K10G | 40.53670|-81.95594| 374|Holmes Cnty AP, Millersburg, OH |US|MTR 0000000000|K11R | 30.219| -96.374| 94|Brenham Muni, TX |US|MTR 0000000000|K12N | 41.01 | -74.74 | 178|Andover/Aeroflex-Andover, NJ |US|MTR 0000000000|K13G | 43.27 | -79.07 | 82|NIAGARA (CGS), NY |US|MTR 0000000000|K13K | 37.85161|-96.29203| 368|Eureka Muni, Eureka, KS |US|MTR 0000000000|K14Y | 45.899| -94.874| 406|Todd Field AP, Long Prairie, MN |US|MTR +0000000000|K15M | 34.77333|-88.16608| 191|Iuka Airport, Iuka, MS |US|MTR 0000000000|K17J | 31.00697|-84.87761| 45|Donalsonville AP, Donalsonville, GA|US|MTR 0000000000|K17W | 46.45 | -95.21 | 418|Wadena Muni, MN |US|MTR 0000000000|K18A | 34.3404| -83.1308| 271|Franklin Cnty AP, Canon, GA |US|MTR @@ -1366,6 +1367,7 @@ 0000072791|KAST | 46.1570|-123.8820| 7|Astoria/Clatsop, OR |US|MTR 0000000000|KASW | 41.275| -85.84 | 259|Warsaw, IN |US|MTR 0000000000|KASX | 46.55 | -90.92 | 252|Ashland/John F Kennedy Mem, WI |US|MTR +0000000000|KATA | 33.10253|-94.19503| 85|Hall-Miller Muni AP, Atlanta, TX |US|MTR 0000072219|KATL | 33.66 | -84.42 | 315|Hartsfield-Jackson IAP, Atlanta, GA |US|MTR 0000000000|KATP | 27.195| -90.027| -0|Green Canyon 787, Atlantis, LA |US|MTR 0000000000|KATS | 32.85 |-104.47 | 1081|Artesia, NM |US|MTR @@ -2200,6 +2202,7 @@ 0000000000|KHCR | 40.48181|-111.42881| 1718|Heber City Muni AP, Heber, UT |US|MTR 0000000000|KHDC | 30.52 | -90.42 | 13|Hammond Muni, LA |US|MTR 0000000000|KHDE | 40.45 | -99.33 | 705|Holdrege, NE |US|MTR +0000000000|KHDL | 31.36413|-85.31252| 109|Headland Muni AP, Headland, AL |US|MTR 0000000000|KHDN | 40.51 |-107.25 | 2012|HAYDEN, CO |US|MTR 0000000000|KHDO | 29.36 | -99.16 | 283|HONDO, TX |US|MTR 0000000000|KHEF | 38.721| -77.515| 59|Manassas Rgnl, VA |US|MTR @@ -2275,7 +2278,6 @@ 0000072323|KHSV | 34.66 | -86.77 | 196|HUNTSVILLE/MADIS, AL |US|MTR 0000000000|KHTH | 38.55 |-118.63 | 1285|HAWTHORNE, NV |US|MTR 0000072638|KHTL | 44.38 | -84.68 | 351|HOUGHTON LAKE AR, MI |US|MTR -0000000000|KHTO | 40.98 | -72.25 | 17|EAST HAMPTON, NY |US|MTR 0000072425|KHTS | 38.38 | -82.55 | 255|HUNTINGTON/TRI S, WV |US|MTR 0000000000|KHUA | 34.679| -86.685| 209|Redstone AAF, Huntsville, AL |US|MTR 0000000000|KHUF | 39.46 | -87.30 | 181|HULMAN FLD/TR HT, IN |US|MTR @@ -2288,7 +2290,7 @@ 0000000000|KHVS | 34.403| -80.119| 111|Hartsville, SC |US|MTR 0000000000|KHWD | 37.66 |-122.12 | 14|Hayward Air Terminal, CA |US|MTR 0000000000|KHWO | 26.00 | -80.24 | 3|Hollywood, FL |US|MTR -0000000000|KHWV | 40.82 | -72.86 | 25|Shirley/Brookhaven Arpt, NY |US|MTR +0000000000|KHWV | 40.82195|-72.86691| 25|Shirley/Brookhaven Arpt, NY |US|MTR 0000000000|KHWY | 38.586| -77.711| 102|Warrenton-Fauquier AP, Warrenton, VA|US|MTR 0000000000|KHXD | 32.22 | -80.70 | 6|Hilton Head AP, Hilton Head Is, SC |US|MTR 0000000000|KHYA | 41.68 | -70.28 | 16|HYANNIS, MA |US|MTR @@ -2414,6 +2416,7 @@ 0000000000|KJNX | 35.541| -78.390| 50|Smithfield/Johnston Co, NC |US|MTR 0000000000|KJOT | 41.52 | -88.18 | 177|Joliet, IL |US|MTR 0000000000|KJPD | 44.14661|-107.17438| -0|Powder River Pass, Ten Sleep, WY |US|MTR +0000000000|KJPX | 40.98 | -72.25 | 17|East Hampton Town Airport, NY |US|MTR 0000000000|KJQF | 35.39 | -80.71 | 210|Concord Rgnl, NC |US|MTR 0000000000|KJRB | 40.70121| -74.00903| 2|Manhattan/Wallstreet Helioport, New York, NY |US|MTR 0000000000|KJSO | 31.869| -95.217| 206|Cherokee Co AP, Jacksonville, TX |US|MTR @@ -3474,6 +3477,7 @@ 0000000000|KTQE | 41.76 | -96.18 | 313|Tekamah, NE |US|MTR 0000000000|KTQH | 35.93 | -95.00 | 266|Tahlequah Muni, OK |US|MTR 0000000000|KTQK | 38.47503| -100.88444| 905|Scott City AP, Scott City, KS |US|MTR +0000000000|KTQV | 36.00704|-78.93733| 157|Duke Univ N Heliport, Durham, NC |US|MTR 0000000000|KTRI | 36.48 | -82.40 | 474|TRI-CITY/BRISTOL, TN |US|MTR 0000000000|KTRK | 39.32 |-120.13956 | 1798|Truckee-Tahoe AP, CA |US|MTR 0000000000|KTRL | 32.71 | -96.27 | 145|Terrell Muni, TX |US|MTR diff --git a/rpms/awips2.edex/Installer.edex/ndm/national_category_table.template b/rpms/awips2.edex/Installer.edex/ndm/national_category_table.template index 4e9c868920..e0585ae625 100644 --- a/rpms/awips2.edex/Installer.edex/ndm/national_category_table.template +++ b/rpms/awips2.edex/Installer.edex/ndm/national_category_table.template @@ -868,19 +868,20 @@ K0E0 ABQ K0E4 PHX K0F2 FTW K0J4 BHM -K0J6 BHM K0R0 JAN K0R4 NEW K0S9 SEA K0V4 WBC K0VG MEM K0Y7 DSM +K10G CLE K11R SAT K12C CHI K12N PHL K13A PHX K13K TOP K14Y MSP +K15M MEM K17J ATL K17W MSP K18A ATL @@ -1278,6 +1279,7 @@ KASN BHM KAST PDX KASW IND KASX MKE +KATA FTW KATL ATL KATP NEW KATS ABQ @@ -2139,6 +2141,7 @@ KHCO MSP KHCR SLC KHDC NEW KHDE OMA +KHDL BHM KHDN DEN KHDO SAT KHEF WBC @@ -2218,7 +2221,6 @@ KHST MIA KHSV HUN KHTH RNO KHTL ARB -KHTO NYC KHTS CRW KHTX HUN KHUA HUN @@ -2363,6 +2365,7 @@ KJNW PDX KJNX RDU KJOT CHI KJPD CYS +KJPX NYC KJQF CAE KJRB NYC KJSO FTW @@ -3458,6 +3461,7 @@ KTPL FTW KTQE OMA KTQH OKC KTQK TOP +KTQV RDU KTRI MEM KTRK SFO KTRL FTW diff --git a/rpms/awips2.edex/Installer.edex/ndm/textCCChelp.txt b/rpms/awips2.edex/Installer.edex/ndm/textCCChelp.txt index 594eaf27d3..022552fe94 100644 --- a/rpms/awips2.edex/Installer.edex/ndm/textCCChelp.txt +++ b/rpms/awips2.edex/Installer.edex/ndm/textCCChelp.txt @@ -214,7 +214,6 @@ 0E4 Payson, AZ 0F2 Bowie Muni, Bowie, TX 0J4 Florala Muni, AL -0J6 Headland Muni Airport, Headland, AL 0K2 Pocahontas, IA 0R0 Columbia-Marion Cnty AP, Columbia, MS 0R3 Abbeville, LA (chg to IYA) @@ -276,12 +275,14 @@ 149 Bulletin No. 149 150 Bulletin No. 150 151 Bulletin No. 151 +10G Holmes County Airport, Millersburg, OH 11R Brenham Muni, TX 12N Andover/Aeroflex, Andover, NJ 13A Nogales, AZ 13G Niagara CGS, NY 13K Eureka Muni, Eureka, KS 14Y Todd Field AP, Long Prairie, MN +15M Iuka Airport, Iuka, MS 17J Donalsonville Muni Airport, Donalsonville, GA 17W Wadena Muni, MN 18A 18-Hour WINTEM; K-Franklin Cnty AP, Canon, GA @@ -929,6 +930,7 @@ AT2 Atlantic #2 (B,G,L,R); Entire Atlantic (Tsunami Info) AT3 Atlantic #3 (C,H,M,S) AT4 Atlantic #4 (D,I,N,T) AT5 Atlantic #5 (E,J,O,V) +ATA Hall-Miller Municipal Airport, Atlanta, TX ATA Tanana/Calhoun Mem, AK ATC Tin City AFS, AK ATE P-Teller, AK @@ -2005,6 +2007,7 @@ HCR Heber City Minicipal Airport, Heber, UT HDC Hammond Muni, LA HDE Holdrege, NE HDG FOUS Header +HDL Headland Muni Airport, Headland, AL HDN Hayden, CO HDO Hondo, TX HEB P-Pacific Tsunami Warning Ctr (PTWC) @@ -2113,7 +2116,6 @@ HST Homestead AFB, Homestead, FL HSV Huntsville, AL HTH Hawthorne, NV HTL Houghton Lake, MI -HTO K-East Hampton, NY; P-Hilo/Lyman Field, HI HTS Huntington, WV HTX Huntsville, AL WSR-88D HUA Redstone AAF, Huntsville, AL @@ -2528,6 +2530,7 @@ JON Johnston Island JOT Joliet, IL JPD Powder River Pass, Ten Sleep, WY JPS Ponce/Mercedita, PU +JPX East Hampton Town Airport, NY JQF Concord Rgnl, NC JRB Manhattan/Wallstreet Heliport, New York, NY JRF P-Kalaeloa AP, Kapolei, HI @@ -4016,6 +4019,7 @@ TPP M-Port-Au-Prince, HA; T-Piarco Intl Arpt, TD TQE Tekamah, NE TQH Tahlequah Muni, OK TQK Scott City Airport, Scott City, KS +TQV Duke University North Heliport, Durham, NC TRI Bristol, TN TRK Truckee-Tahoe AP, CA TRL Terrell, TX diff --git a/rpms/awips2.upc/Installer.ldm/component.spec b/rpms/awips2.upc/Installer.ldm/component.spec index 26093fde53..5765b5ee47 100644 --- a/rpms/awips2.upc/Installer.ldm/component.spec +++ b/rpms/awips2.upc/Installer.ldm/component.spec @@ -56,10 +56,6 @@ fi if [ $? -ne 0 ]; then exit 1 fi -/bin/mkdir -p %{_build_root}/etc/logrotate.d -if [ $? -ne 0 ]; then - exit 1 -fi /bin/mkdir -p %{_build_root}/etc/init.d if [ $? -ne 0 ]; then exit 1 @@ -117,10 +113,6 @@ done if [ $? -ne 0 ]; then exit 1 fi -/bin/cp logrotate.d/* %{_build_root}/etc/logrotate.d -if [ $? -ne 0 ]; then - exit 1 -fi /bin/cp init.d/* %{_build_root}/etc/init.d if [ $? -ne 0 ]; then exit 1 @@ -262,4 +254,3 @@ rm -rf ${RPM_BUILD_ROOT} %attr(600,awips,fxalpha) /var/spool/cron/awips #%attr(755,awips,fxalpha) /awips2/edex/bin/edexBridge %attr(755,root,root) /etc/ld.so.conf.d/awips2-ldm.conf -%attr(755,root,root) /etc/logrotate.d/ldm.log diff --git a/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.conf b/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.conf index 8f6e0f1eff..24348e3df4 100644 --- a/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.conf +++ b/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.conf @@ -438,9 +438,9 @@ NGRID ^[LM].Q... KWBR ...... !grib2/[^/]*/([^/]*)/#([^/]*)/([0-9]{8})([0-9]{2})( # # NAM CONUS 12 km (NAM12) - NOAAport # -#NGRID ^[LM].B... KWBE ...... !grib2/[^/]*/([^/]*)/#([^/]*)/([0-9]{8})([0-9]{4})(F[0-9]{3})/([^/]*) -# FILE -edex -close -# /awips2/data_store/grid/NAM12/noaaport/NAM_CONUS_12km_noaaport_\1_\3_\4Z_\5_\6-(seq).grib2 +NGRID ^[LM].B... KWBE ...... !grib2/[^/]*/([^/]*)/#([^/]*)/([0-9]{8})([0-9]{4})(F[0-9]{3})/([^/]*) + FILE -edex -close + /awips2/data_store/grid/NAM12/noaaport/NAM_CONUS_12km_noaaport_\1_\3_\4Z_\5_\6-(seq).grib2 # # NAM Alaska 11 km (AK-NAM11) # diff --git a/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.grids b/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.grids index 7ab8c28e51..0ff3e458e6 100644 --- a/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.grids +++ b/rpms/awips2.upc/Installer.ldm/patch/etc/pqact.grids @@ -128,9 +128,9 @@ NGRID ^[LM].Q... KWBR ...... !grib2/[^/]*/([^/]*)/#([^/]*)/([0-9]{8})([0-9]{2})( # # NAM CONUS 12 km (NAM12) - NOAAport # -#NGRID ^[LM].B... KWBE ...... !grib2/[^/]*/([^/]*)/#([^/]*)/([0-9]{8})([0-9]{4})(F[0-9]{3})/([^/]*) -# FILE -edex -close -# /awips2/data_store/grid/NAM12/noaaport/NAM_CONUS_12km_noaaport_\1_\3_\4Z_\5_\6-(seq).grib2 +NGRID ^[LM].B... KWBE ...... !grib2/[^/]*/([^/]*)/#([^/]*)/([0-9]{8})([0-9]{4})(F[0-9]{3})/([^/]*) + FILE -edex -close + /awips2/data_store/grid/NAM12/noaaport/NAM_CONUS_12km_noaaport_\1_\3_\4Z_\5_\6-(seq).grib2 # # NAM Alaska 11 km (AK-NAM11) # diff --git a/rpms/awips2.upc/Installer.ldm/patch/logrotate.d/ldm.log b/rpms/awips2.upc/Installer.ldm/patch/logrotate.d/ldm.log deleted file mode 100644 index b4914737fa..0000000000 --- a/rpms/awips2.upc/Installer.ldm/patch/logrotate.d/ldm.log +++ /dev/null @@ -1,12 +0,0 @@ -/awips2/ldm/logs/ldmd.log /awips2/ldm/logs/edexBridge.log { - missingok - compress - notifempty - daily - rotate 5 - create 0660 root fxalpha - postrotate - /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true - endscript - -}