array:40 [
  "versionId" => 2021672
  "version" => "2.2.16"
  "app" => App {#2
    #container: Container {#10
      #data: array:184 [ …184]
      #cache: array:76 [ …76]
      #cacheable: array:184 [ …184]
      #factory: array:20 [ …20]
      #factoryObjects: array:7 [ …7]
    }
    #preLoadShared: array:26 [
      0 => "addOns"
      1 => "addOnsComposer"
      2 => "autoJobRun"
      3 => "bbCodeMedia"
      4 => "classExtensions"
      5 => "codeEventListeners"
      6 => "connectedAccountCount"
      7 => "contentTypes"
      8 => "displayStyles"
      9 => "helpPageCount"
      10 => "languages"
      11 => "masterStyleProperties"
      12 => "nodeTypes"
      13 => "options"
      14 => "paymentProvider"
      15 => "reactions"
      16 => "reportCounts"
      17 => "simpleCache"
      18 => "smilies"
      19 => "unapprovedCounts"
      20 => "userBanners"
      21 => "userTitleLadder"
      22 => "userUpgradeCount"
      23 => "widgetCache"
      24 => "widgetDefinition"
      25 => "widgetPosition"
    ]
    #preLoadLocal: array:13 [
      0 => "bannedIps"
      1 => "bbCodeCustom"
      2 => "discouragedIps"
      3 => "forumTypes"
      4 => "notices"
      5 => "noticesLastReset"
      6 => "routeFilters"
      7 => "routesPublic"
      8 => "styles"
      9 => "userFieldsInfo"
      10 => "threadFieldsInfo"
      11 => "threadPrefixes"
      12 => "threadTypes"
    ]
    #updateCsrfCookie: "RwR8VqlHVOOC1wx-"
    #isServedFromCache: false
  }
  "request" => Request {#233
    #filterer: InputFilterer {#234
      #stringCleaning: array:67 [ …67]
      #fullUnicode: true
    }
    #input: array:1 [
      "/shooting/threads/trasol-vs-strelok-pro_6900613/" => ""
    ]
    #files: []
    #cookie: []
    #server: array:39 [
      "USER" => "production"
      "HOME" => "/home/production"
      "HTTP_CF_CONNECTING_IP" => "3.14.133.127"
      "HTTP_REFERER" => "https://www.snipershide.com/shooting/threads/trasol-vs-strelok-pro.6900613"
      "HTTP_CONNECTION" => "Keep-Alive"
      "HTTP_CF_VISITOR" => "{"scheme":"https"}"
      "HTTP_CDN_LOOP" => "cloudflare; loops=1"
      "HTTP_ACCEPT" => "*/*"
      "HTTP_X_FORWARDED_PROTO" => "https"
      "HTTP_CF_IPCOUNTRY" => "US"
      "HTTP_ACCEPT_ENCODING" => "gzip, br"
      "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])"
      "HTTP_HOST" => "www.snipershide.com"
      "HTTP_X_FORWARDED_FOR" => "3.14.133.127"
      "HTTP_CF_RAY" => "8e22d8523be91084-ORD"
      "REDIRECT_STATUS" => "200"
      "SERVER_NAME" => "www.snipershide.com"
      "SERVER_PORT" => "443"
      "SERVER_ADDR" => "144.168.44.98"
      "REMOTE_PORT" => ""
      "REMOTE_ADDR" => "3.14.133.127"
      "SERVER_SOFTWARE" => "nginx/1.18.0"
      "GATEWAY_INTERFACE" => "CGI/1.1"
      "HTTPS" => "on"
      "REQUEST_SCHEME" => "https"
      "SERVER_PROTOCOL" => "HTTP/1.1"
      "DOCUMENT_ROOT" => "/usr/share/nginx/sites/production/www.snipershide.com"
      "DOCUMENT_URI" => "/shooting/index.php"
      "REQUEST_URI" => "/shooting/threads/trasol-vs-strelok-pro.6900613/"
      "SCRIPT_NAME" => "/shooting/index.php"
      "CONTENT_LENGTH" => ""
      "CONTENT_TYPE" => ""
      "REQUEST_METHOD" => "GET"
      "QUERY_STRING" => "/shooting/threads/trasol-vs-strelok-pro.6900613/&"
      "SCRIPT_FILENAME" => "/usr/share/nginx/sites/production/www.snipershide.com/shooting/index.php"
      "FCGI_ROLE" => "RESPONDER"
      "PHP_SELF" => "/shooting/index.php"
      "REQUEST_TIME_FLOAT" => 1731543723.9029
      "REQUEST_TIME" => 1731543723
    ]
    #skipLogKeys: array:1 [
      0 => "_xfToken"
    ]
    #cookiePrefix: "xf_"
    #remoteIp: "3.14.133.127"
    #robotName: ""
    #fromSearch: false
  }
  "uri" => "/shooting/threads/trasol-vs-strelok-pro.6900613/"
  "fullUri" => "https://www.snipershide.com/shooting/threads/trasol-vs-strelok-pro.6900613/"
  "time" => 1731543723
  "timeDetails" => array:6 [
    "tomorrow" => "1731560400"
    "now" => 1731543723
    "today" => "1731474000"
    "todayDow" => "3"
    "yesterday" => "1731387600"
    "week" => "1730955600"
  ]
  "debug" => false
  "development" => false
  "designer" => false
  "visitor" => User {#310
    #_getterCache: array:2 [
      "PermissionSet" => PermissionSet {#323 …5}
      "adav_max_postbit_achievements" => 3
    ]
    #_valueCache: array:3 [
      "is_moderator" => false
      "is_banned" => false
      "is_admin" => false
    ]
    #_structure: Structure {#297
      +shortName: "XF:User"
      +contentType: "user"
      +table: "xf_user"
      +primaryKey: "user_id"
      +columns: array:54 [ …54]
      +relations: array:19 [ …19]
      +getters: array:68 [ …68]
      +defaultWith: array:1 [ …1]
      +options: array:8 [ …8]
      +behaviors: array:1 [ …1]
      +columnAliases: array:1 [ …1]
      +withAliases: array:1 [ …1]
    }
    #_em: Manager {#294
      #db: Adapter {#223
        #statementClass: "XF\Db\Mysqli\Statement"
        #config: array:6 [ …6]
        #fullUnicode: true
        #inTransaction: false
        #savePointCounter: 0
        #savePoints: []
        #queryCount: 39
        #logQueries: false
        #logSimpleOnly: null
        #queryLog: []
        #ignoreLegacyTableWriteError: false
        #schemaManager: null
        #connection: mysqli {#324}
      }
      #valueFormatter: ValueFormatter {#295}
      #extension: Extension {#227 …4}
      #entityClassNameMap: array:27 [ …27]
      #entities: array:18 [ …18]
      #structures: array:27 [ …27]
      #repositories: array:23 [ …23]
      #cascadeEntitySeen: []
      #cascadeEventDepth: []
    }
    -_uniqueEntityId: 5
    #rootClass: "XF\Entity\User"
    #_useReplaceInto: false
    #_newValues: []
    #_values: array:52 [
      "user_id" => 0
      "username" => ""
      "username_date" => 0
      "username_date_visible" => 0
      "style_id" => 0
      "language_id" => 0
      "timezone" => "America/New_York"
      "visible" => 1
      "activity_visible" => 1
      "user_group_id" => 1
      "secondary_group_ids" => ""
      "display_style_group_id" => 0
      "permission_combination_id" => 1
      "message_count" => 0
      "question_solution_count" => 0
      "alerts_unviewed" => 0
      "alerts_unread" => 0
      "conversations_unread" => 0
      "register_date" => 1731543723
      "last_activity" => 1731543723
      "last_summary_email_date" => null
      "trophy_points" => 0
      "avatar_date" => 0
      "avatar_width" => 0
      "avatar_height" => 0
      "avatar_highdpi" => 0
      "gravatar" => ""
      "user_state" => "valid"
      "security_lock" => ""
      "is_moderator" => 0
      "is_admin" => 0
      "is_staff" => 0
      "is_banned" => 0
      "reaction_score" => 0
      "vote_score" => 0
      "custom_title" => ""
      "warning_points" => 0
      "privacy_policy_accepted" => 0
      "terms_accepted" => 0
      "adca_last_email_date" => 0
      "thdonate_total_donation" => 0.0
      "thdonate_total_public_donation" => 0.0
      "thdonate_total_anonymous_donation" => 0.0
      "thdonate_num_donation" => 0
      "thdonate_num_public_donation" => 0
      "thdonate_num_anonymous_donation" => 0
      "thfeature_feature_count" => 0
      "xfmg_album_count" => 0
      "xfmg_media_count" => 0
      "xfmg_media_quota" => 0
      "xfrm_resource_count" => 0
      "audapp_preferences" => "[]"
    ]
    #_relations: array:4 [
      "Auth" => UserAuth {#303 …20}
      "Option" => UserOption {#305 …20}
      "Profile" => UserProfile {#307 …20}
      "Privacy" => UserPrivacy {#309 …20}
    ]
    #_previousValues: []
    #_options: []
    #_deleted: false
    #_readOnly: true
    #_writePending: false
    #_writeRunning: false
    #_errors: []
    #_whenSaveable: []
    #_cascadeSave: []
    #_behaviors: null
    #audliveUserRealmIds: null
    #primaryRealmUserId: null
    #realmsUserRealmIds: null
    #forceRealmsChanges: false
    #thuixWatchedNodes: null
    #thuc_user_criteria_cache: null
    #postDaysData: []
  }
  "session" => Session {#275
    #storage: DbStorage {#276
      #db: Adapter {#223}
      #table: "xf_session"
    }
    #config: array:5 [
      "cookie" => "session"
      "keyLength" => 32
      "lifetime" => 14400
      "ipv4CidrMatch" => 24
      "ipv6CidrMatch" => 64
    ]
    #sessionId: "JBXTS7_ZOtYoVv1_M5wpEvL0bNlRMN6a"
    #exists: false
    #fromCookie: false
    #data: array:1 [
      "_ip" => b"\x03\x0E\x7F"
    ]
  }
  "cookie" => array:4 [
    "prefix" => "xf_"
    "path" => "/"
    "domain" => ""
    "secure" => true
  ]
  "cookieConsent" => CookieConsent {#279
    #cookies: array:26 [
      "__crossTab" => array:4 [ …4]
      "cacheKey" => array:4 [ …4]
      "consent" => array:4 [ …4]
      "csrf" => array:4 [ …4]
      "dbWriteForced" => array:4 [ …4]
      "editorDisabled" => array:4 [ …4]
      "emoji_usage" => array:4 [ …4]
      "fr-copied-html" => array:4 [ …4]
      "fr-copied-text" => array:4 [ …4]
      "from_search" => array:4 [ …4]
      "guestUsername" => array:4 [ …4]
      "inline_mod_*" => array:4 [ …4]
      "language_id" => array:4 [ …4]
      "lbSidebarDisabled" => array:4 [ …4]
      "ls" => array:4 [ …4]
      "multiQuote*" => array:4 [ …4]
      "notice_dismiss" => array:4 [ …4]
      "push_history_user_ids" => array:4 [ …4]
      "push_notice_dismiss" => array:4 [ …4]
      "push_subscription_updated" => array:4 [ …4]
      "session" => array:4 [ …4]
      "style_id" => array:4 [ …4]
      "tfa_trust" => array:4 [ …4]
      "toggle" => array:4 [ …4]
      "user" => array:4 [ …4]
      "visitorCounts" => array:4 [ …4]
    ]
    #thirdParties: array:133 [
      "abcnews" => true
      "acast" => true
      "anchor" => true
      "apple_music" => true
      "applepodcasts" => true
      "audioboom" => true
      "audiomack" => true
      "audius" => true
      "bandcamp" => true
      "bbcnews" => true
      "bitchute" => true
      "brightcove" => true
      "bunny" => true
      "captivate" => true
      "castos" => true
      "cbsnews" => true
      "clyp" => true
      "cnbc" => true
      "cnn" => true
      "cnnmoney" => true
      "codepen" => true
      "comedycentral" => true
      "coub" => true
      "dailymotion" => true
      "democracynow" => true
      "dumpert" => true
      "eighttracks" => true
      "espn" => true
      "facebook" => true
      "falstad" => true
      "flickr" => true
      "foxnews" => true
      "funnyordie" => true
      "gamespot" => true
      "getty" => true
      "gifs" => true
      "giphy" => true
      "gist" => true
      "globalnews" => true
      "gofundme" => true
      "google" => true
      "google_analytics" => true
      "google_recaptcha" => true
      "hudl" => true
      "hulu" => true
      "ign" => true
      "imdb" => true
      "imgur" => true
      "indiegogo" => true
      "instagram" => true
      "internetarchive" => true
      "izlesene" => true
      "jsfiddle" => true
      "jwplatform" => true
      "kaltura" => true
      "khl" => true
      "kickstarter" => true
      "libsyn" => true
      "liveleak" => true
      "livestream" => true
      "mailru" => true
      "mastodon" => true
      "medium" => true
      "megaphone" => true
      "meta" => true
      "metacafe" => true
      "mixcloud" => true
      "mlb" => true
      "mrctv" => true
      "msnbc" => true
      "natgeochannel" => true
      "natgeovideo" => true
      "nbcnews" => true
      "nhl" => true
      "npr" => true
      "nytimes" => true
      "odysee" => true
      "on3" => true
      "orfium" => true
      "pastebin" => true
      "pinterest" => true
      "podbean" => true
      "prezi" => true
      "reddit" => true
      "rumble" => true
      "rutube" => true
      "scribd" => true
      "sendvid" => true
      "slideshare" => true
      "soundcloud" => true
      "sporcle" => true
      "sportsnet" => true
      "spotify" => true
      "spreaker" => true
      "steamstore" => true
      "strawpoll" => true
      "streamable" => true
      "teamcoco" => true
      "ted" => true
      "telegram" => true
      "theatlantic" => true
      "theguardian" => true
      "theonion" => true
      "tiktok" => true
      "tmz" => true
      "tradingview" => true
      "traileraddict" => true
      "trendingviews" => true
      "tumblr" => true
      "twentyfoursevensports" => true
      "twitch" => true
      "twitter" => true
      "ustream" => true
      "vbox7" => true
      "veoh" => true
      "vevo" => true
      "videodetective" => true
      "vimeo" => true
      "vine" => true
      "vk" => true
      "vocaroo" => true
      "vox" => true
      "washingtonpost" => true
      "wavekit" => true
      "wistia" => true
      "wshh" => true
      "wsj" => true
      "xboxclips" => true
      "xboxdvr" => true
      "xenforo" => true
      "youku" => true
      "youmaker" => true
      "youtube" => true
    ]
    #consentedGroups: []
  }
  "enableRtnProtect" => true
  "serviceWorkerPath" => null
  "language" => Language {#311
    #id: "1"
    #options: array:18 [
      "title" => "English (US)"
      "language_code" => "en-US"
      "date_format" => "M j, Y"
      "time_format" => "g:i A"
      "currency_format" => "{symbol}{value}"
      "decimal_point" => "."
      "thousands_separator" => ","
      "text_direction" => "LTR"
      "week_start" => 0
      "label_separator" => ":"
      "comma_separator" => ", "
      "ellipsis" => ""
      "parenthesis_open" => "("
      "parenthesis_close" => ")"
      "user_selectable" => true
      "language_id" => 1
      "parent_id" => 0
      "parent_list" => array:2 [ …2]
    ]
    #db: Adapter {#223}
    #groupPath: "/usr/share/nginx/sites/production/xf_code_cache/phrase_groups"
    #phraseCache: array:409 [
      "nav.NewsFeed" => "Your news feed"
      "nav._default" => "Default (no selected tab)"
      "nav.ad_leaderboards" => "Leaderboards"
      "nav.articles" => "Articles"
      "nav.audfeeds" => "Feeds"
      "nav.audfeeds_feed_1" => "Events"
      "nav.audfeeds_feed_10" => "Trending threads"
      "nav.audfeeds_feed_11" => "Hot"
      "nav.audfeeds_feed_12" => "Threads"
      "nav.audfeeds_feed_13" => "Questions"
      "nav.audfeeds_feed_14" => "Posts"
      "nav.audfeeds_feed_15" => "Hot Social"
      "nav.audfeeds_feed_2" => "Social"
      "nav.audfeeds_feed_3" => "Resources"
      "nav.audfeeds_feed_5" => "Comments"
      "nav.audfeeds_feed_6" => "Media"
      "nav.audfeeds_feed_7" => "Forum list"
      "nav.audfeeds_feed_8" => "Following"
      "nav.audfeeds_feed_9" => "Latest activity"
      "nav.audlive_realm_1" => "Home"
      "nav.contributedThreads" => "Threads with your posts"
      "nav.currentVisitors" => "Current visitors"
      "nav.defaultLatestActivity" => "Latest activity"
      "nav.defaultLogOut" => "Log out"
      "nav.defaultNewsFeed" => "Your news feed"
      "nav.defaultRegister" => "Register"
      "nav.defaultYourAccount" => "Your account"
      "nav.defaultYourProfile" => "Your profile"
      "nav.findThreads" => "Find threads"
      "nav.forumList" => "Forum list"
      "nav.forums" => "Forums"
      "nav.home" => "Home"
      "nav.latestActivity" => "Latest activity"
      "nav.markForumsRead" => "Mark forums read"
      "nav.members" => "Members"
      "nav.merch" => "Merch"
      "nav.newMedia" => "New media"
      "nav.newPosts" => "New posts"
      "nav.newProfilePosts" => "New profile posts"
      "nav.nfCalendar" => "Calendar"
      "nav.nfCalendarCreateEvent" => "Create event"
      "nav.nfCalendarEventWaitlist" => "Events you're waiting for"
      "nav.nfCalendarFindEvents" => "Find events"
      "nav.nfCalendarMarkRead" => "Mark read"
      "nav.nfCalendarNewEvents" => "New events"
      "nav.nfCalendarRsvpGoing" => "Events you're going to"
      "nav.nfCalendarRsvpMaybe" => "Events you might be going to"
      "nav.nfCalendarSearch" => "Search events"
      "nav.nfCalendarWatchedEvents" => "Watched events"
      "nav.nfCalendarYourEvents" => "Your events"
      "nav.nfNewCalEvents" => "New calendar events"
      "nav.realms_quizzes" => "Quizzes"
      "nav.realms_realm_1" => "Home"
      "nav.registeredMembers" => "Registered members"
      "nav.searchForums" => "Search forums"
      "nav.searchProfilePosts" => "Search profile posts"
      "nav.thMonetize_accountUpgrades" => "Account upgrades"
      "nav.th_donate" => "Donate"
      "nav.thfeature" => "Featured"
      "nav.thfilters_all_threads" => "All threads"
      "nav.thfilters_latest_threads" => "Latest threads"
      "nav.thfilters_newest_threads" => "New posts"
      "nav.thfilters_trending_threads" => "Trending threads"
      "nav.thtrending" => "Trending"
      "nav.thxlink_1" => "Home"
      "nav.unansweredThreads" => "Unanswered threads"
      "nav.upgrade" => "Upgrade"
      "nav.watched" => "Watched"
      "nav.watchedForums" => "Watched forums"
      "nav.watchedThreads" => "Watched threads"
      "nav.whatsNew" => "What's new"
      "nav.whatsNewNewsFeed" => "Your news feed"
      "nav.whatsNewPosts" => "New posts"
      "nav.whatsNewProfilePosts" => "New profile posts"
      "nav.xcfs" => "Feedback"
      "nav.xcfsFeedbackPref" => "Feedback Preferences"
      "nav.xcfsStatistics" => "View Statistics"
      "nav.xfmg" => "Media"
      "nav.xfmgAddMedia" => "Add media"
      "nav.xfmgMarkViewed" => "Mark viewed"
      "nav.xfmgNewComments" => "New comments"
      "nav.xfmgNewMedia" => "New media"
      "nav.xfmgSearchMedia" => "Search media"
      "nav.xfmgWatchedAlbums" => "Watched albums"
      "nav.xfmgWatchedCategories" => "Watched categories"
      "nav.xfmgWatchedContent" => "Watched"
      "nav.xfmgWatchedMedia" => "Watched media"
      "nav.xfmgWhatsNewMediaComments" => "New media comments"
      "nav.xfmgWhatsNewNewMedia" => "New media"
      "nav.xfmgYourAlbums" => "Your albums"
      "nav.xfmgYourContent" => "Your content"
      "nav.xfmgYourMedia" => "Your media"
      "nav.xfrm" => "Resources"
      "nav.xfrmLatestReviews" => "Latest reviews"
      "nav.xfrmNewResources" => "New resources"
      "nav.xfrmSearchResources" => "Search resources"
      "nav.xfrmWatched" => "Watched"
      "nav.xfrmWatchedCategories" => "Watched categories"
      "nav.xfrmWatchedResources" => "Watched resources"
      "nav.xfrmYourResources" => "Your resources"
      "nav.yourThreads" => "Your threads"
      "button.attach" => "Attach files"
      "button.cancel" => "Cancel"
      "button.confirm" => "Confirm"
      "button.copy" => "Copy"
      "button.delete" => "Delete"
      "button.edit" => "Edit"
      "button.export" => "Export"
      "button.hide" => "Hide"
      "button.import" => "Import"
      "button.login" => "Log in"
      "button.merge" => "Merge"
      "button.move" => "Move"
      "button.preview" => "Preview"
      "button.purchase" => "Purchase"
      "button.save" => "Save"
      "button.search" => "Search"
      "button.show" => "Show"
      "button.sort" => "Sort"
      "button.submit" => "Submit"
      "button.translate" => "Translate"
      "thread_prefix.1" => "SOLD"
      "thread_prefix.10" => "Advanced Marksmanship"
      "thread_prefix.11" => "Sniper’s Hide Cup"
      "thread_prefix.12" => "PRS Talk"
      "thread_prefix.13" => "Rifle Competition Events"
      "thread_prefix.14" => "F T/R Competition"
      "thread_prefix.15" => "Rifleman’s Team Challenge"
      "thread_prefix.16" => "Maggie’s"
      "thread_prefix.17" => "Movie Theater"
      "thread_prefix.18" => "Member Link Up"
      "thread_prefix.19" => "Photos"
      "thread_prefix.2" => "Gunsmithing"
      "thread_prefix.20" => "Hunting & Fishing"
      "thread_prefix.21" => "Fieldcraft"
      "thread_prefix.22" => "Firearms"
      "thread_prefix.23" => "Optics"
      "thread_prefix.24" => "Accessories"
      "thread_prefix.25" => "Rimfire"
      "thread_prefix.26" => "Reloading Equipment"
      "thread_prefix.27" => "Left Hand Sale"
      "thread_prefix.28" => "Feedback"
      "thread_prefix.29" => "Group Buys"
      "thread_prefix.3" => "Sidearms & Scatterguns"
      "thread_prefix.30" => "Night Vision"
      "thread_prefix.31" => "Spotters"
      "thread_prefix.32" => "K-Bars"
      "thread_prefix.33" => "Precision Rifle Gear"
      "thread_prefix.34" => "WTB"
      "thread_prefix.35" => "Knives"
      "thread_prefix.36" => "Assassin's Way"
      "thread_prefix.37" => "Fieldcraft Matches"
      "thread_prefix.38" => "Physical Fitness"
      "thread_prefix.39" => "Ammo"
      "thread_prefix.4" => "Suppressors"
      "thread_prefix.5" => "Night Vision"
      "thread_prefix.6" => "Rifle Scopes"
      "thread_prefix.7" => "Alaska Precision Rifle Course"
      "thread_prefix.8" => "Range Report"
      "thread_prefix.9" => "Training Courses"
      "widget_def.XP_xpress_recent_posts_3" => "XPress: thxpress_widget_recent_posts"
      "widget_def.adav_level_progress" => "[Audentio] Achievements: Progress to next level"
      "widget_def.adav_recent_achievements" => "[Audentio] Achievements: Recently Earned Achievements"
      "widget_def.adav_tracked_achievements" => "[Audentio] Achievements: Tracked Achievements"
      "widget_def.adca_account_completion" => "[Audentio] Account Completion"
      "widget_def.adlb_leaderboard" => "[Audentio] Leaderboards: Leaderboard"
      "widget_def.birthdays" => "Today's birthdays"
      "widget_def.find_member" => "Find member"
      "widget_def.forum_statistics" => "Forum statistics"
      "widget_def.html" => "HTML"
      "widget_def.member_stat" => "Member stat"
      "widget_def.members_online" => "Members online"
      "widget_def.new_posts" => "New posts"
      "widget_def.new_profile_posts" => "New profile posts"
      "widget_def.new_threads" => "New threads"
      "widget_def.newest_members" => "Newest members"
      "widget_def.nf_calendar_featured_even" => "Calendar: Featured events"
      "widget_def.nf_calendar_upcoming_evnt" => "Calendar: Upcoming events"
      "widget_def.online_statistics" => "Online statistics"
      "widget_def.php_callback" => "PHP callback"
      "widget_def.search_forum" => "Search forum"
      "widget_def.share_page" => "Share this page"
      "widget_def.template_syntax" => "Template syntax"
      "widget_def.th_post_thread_uix" => "[UI.X] Start a thread"
      "widget_def.th_reactplus_top_content" => "[TH] Reactions Plus: Top content"
      "widget_def.th_widget_login_uix" => "[UI.X] Login form"
      "widget_def.thdonate_campaign" => "[TH] Donate: Campaign"
      "widget_def.thdonate_earnings" => "[TH] Donate: Earnings"
      "widget_def.thdonate_goals" => "[TH] Donate: Goals"
      "widget_def.thdonate_topDonations" => "[TH] Donate: Top donations"
      "widget_def.thdonate_topDonors" => "[TH] Donate: Top donors"
      "widget_def.thfeature_full" => "[TH] Featured Threads and Content: Full"
      "widget_def.thfeature_full_thread" => "[TH] Featured Threads and Content: Full Threads"
      "widget_def.thfeature_grid" => "[TH] Featured Threads and Content: Grid"
      "widget_def.thfeature_grid_threads" => "[TH] Featured Threads and Content: Grid Threads"
      "widget_def.thfeature_slider" => "[TH] Featured Threads and Content: Slider"
      "widget_def.thfeature_slider_threads" => "[TH] Featured Threads and Content: Slider Threads"
      "widget_def.thfilters_filters" => "[TH] Filters"
      "widget_def.threactplus_userReactList" => "[TH] Reactions Plus: Member reaction list"
      "widget_def.thread_poll" => "Thread poll"
      "widget_def.thtrending" => "[TH] Trending"
      "widget_def.thuix_socialMedia" => "[TH] UI.X social media feed"
      "widget_def.thxpress_latest_articles" => "[TH] XPress: Latest Articles"
      "widget_def.visitor_panel" => "Visitor panel"
      "widget_def.xcfs_latest_feedback" => "XCFS: Latest Feedback"
      "widget_def.xcfs_top_traders" => "XCFS: Top Traders"
      "widget_def.xcfs_untrusted_traders" => "XCFS: Untrusted Traders"
      "widget_def.xfes_similar_threads" => "XFES: Similar threads"
      "widget_def.xfmg_albums_slider" => "XFMG: Albums slider"
      "widget_def.xfmg_gallery_statistics" => "XFMG: Gallery statistics"
      "widget_def.xfmg_latest_comments" => "XFMG: Latest comments"
      "widget_def.xfmg_media_slider" => "XFMG: Media slider"
      "widget_def.xfrm_featured_resources" => "XFRM: Featured resources"
      "widget_def.xfrm_latest_reviews" => "XFRM: Latest reviews"
      "widget_def.xfrm_new_resources" => "XFRM: New resources"
      "widget_def.xfrm_top_resources" => "XFRM: Top resources"
      "widget.Complete_Account" => "Complete Your Account"
      "widget.advertisement" => "Advertisement"
      "widget.app_download_canvas" => "App download"
      "widget.become_a_member" => "Upgrade Your Account"
      "widget.canvas_menu" => "Canvas Menu"
      "widget.canvas_menu_social" => "Canvas menu social"
      "widget.donation" => "Help Cover Community Costs!"
      "widget.forum_overview_forum_statistics" => ""
      "widget.forum_overview_members_online" => ""
      "widget.forum_overview_new_posts" => ""
      "widget.forum_overview_new_profile_posts" => ""
      "widget.forum_overview_share_page" => ""
      "widget.latest_followed_profile_posts" => "Latest profile posts by followers"
      "widget.latest_posts" => "Latest posts"
      "widget.latest_profile_posts" => "Latest profile posts"
      "widget.latest_watched" => "Latest watched"
      "widget.leaderboards" => "Leaderboard: Posts"
      "widget.member_wrapper_find_member" => ""
      "widget.member_wrapper_newest_members" => ""
      "widget.nf_calendar_list_featured_events" => ""
      "widget.online_list_online_statistics" => ""
      "widget.sh_forumStats" => "Forum Statistics"
      "widget.sh_homeTrending" => "Trending Threads"
      "widget.sh_mediaSlider" => "Latest Media"
      "widget.sh_subscribe" => "Subscribe"
      "widget.thdonate_earnings" => ""
      "widget.thdonate_goals" => ""
      "widget.thdonate_topDonations" => ""
      "widget.thdonate_topDonors" => ""
      "widget.thuix_footer_aboutUsWidget" => "About us"
      "widget.uix_footer_forumStatistics" => ""
      "widget.uix_footer_newPosts" => ""
      "widget.uix_footer_onlineStatistics" => ""
      "widget.uix_footer_sharePage" => ""
      "widget.uix_sidebar_postNewThread" => "Can't find a topic?"
      "widget.unread_posts" => "Unread posts"
      "widget.whats_new_new_posts" => ""
      "widget.whats_new_new_profile_posts" => ""
      "widget.xfes_thread_view_below_quick_reply_similar_threads" => ""
      "widget.xfrm_forum_overview_new_resources" => ""
      "widget.xfrm_list_featured_resources" => ""
      "widget.xfrm_list_top_resources" => ""
      "widget.xfrm_overview_latest_reviews" => ""
      "widget.xfrm_overview_top_authors" => ""
      "widget.xfrm_whats_new_overview_new_resources" => ""
      "trophy_title.1" => "First Real Post"
      "trophy_title.10" => "Old School Sniper's Hide"
      "trophy_title.11" => "Posts (Silent)"
      "trophy_title.12" => "Logging In (Silent)"
      "trophy_title.13" => "Post Media Items (Silent)"
      "trophy_title.136" => "Test Achievement 4"
      "trophy_title.14" => "Spotted"
      "trophy_title.15" => "Rifle Cleaner"
      "trophy_title.16" => "Completed Profile"
      "trophy_title.17" => "Gunsmith"
      "trophy_title.19" => "Community Contributor"
      "trophy_title.2" => "Just getting into Precision Rifle."
      "trophy_title.20" => "Marksman!"
      "trophy_title.22" => "Made America Great Again"
      "trophy_title.23" => "Professor"
      "trophy_title.25" => "Leaderboard Legend"
      "trophy_title.26" => "Commercial Sales Member"
      "trophy_title.27" => "Supporter"
      "trophy_title.3" => "Look Everyone I can Sell Now !"
      "trophy_title.4" => "Hide Addict !"
      "trophy_title.5" => "Members are Noticing"
      "trophy_title.6" => "Hide Rockstar, Lady Gaga Approved!"
      "trophy_title.7" => "They like me, they really like me!"
      "trophy_title.8" => "I want to have Lowlight's Love Child"
      "trophy_title.9" => "I LOVE IT LONG TIME"
      "reactions.1_person" => "1 person"
      "reactions.deleted_user" => "(deleted member)"
      "reactions.threactplus_one_user" => "1 user"
      "reactions.threactplus_x_users" => "{count} users"
      "reactions.threactplus_you_and_x_others" => "You and {count} others"
      "reactions.user1" => "{user1}"
      "reactions.user1_and_user2" => "{user1} and {user2}"
      "reactions.user1_user2_and_user3" => "{user1}, {user2} and {user3}"
      "reactions.user1_user2_user3_and_1_other" => "{user1}, {user2}, {user3} and 1 other person"
      "reactions.user1_user2_user3_and_x_others" => "{user1}, {user2}, {user3} and {others} others"
      "reactions.x_people" => "{reactions} people"
      "reactions.you" => "You"
      "reactions.you_and_user1" => "You and {user1}"
      "reactions.you_user1_and_user2" => "You, {user1} and {user2}"
      "reactions.you_user1_user2_and_1_other" => "You, {user1}, {user2} and 1 other person"
      "reactions.you_user1_user2_and_x_others" => "You, {user1}, {user2} and {others} others"
      "reaction_title.1" => "Like"
      "reaction_title.2" => "Love"
      "reaction_title.3" => "Haha"
      "reaction_title.4" => "Wow"
      "reaction_title.5" => "Sad"
      "reaction_title.6" => "Angry"
      "a_moment_ago" => "A moment ago"
      "actions" => "Actions"
      "approve" => "Approve"
      "continue_reading" => "Continue reading..."
      "conversations" => "Conversations"
      "date_x_at_time_y" => "{date} at {time}"
      "day_friday" => "Friday"
      "day_friday_short" => "Fri"
      "day_monday" => "Monday"
      "day_monday_short" => "Mon"
      "day_saturday" => "Saturday"
      "day_saturday_short" => "Sat"
      "day_sunday" => "Sunday"
      "day_sunday_short" => "Sun"
      "day_thursday" => "Thursday"
      "day_thursday_short" => "Thu"
      "day_tuesday" => "Tuesday"
      "day_tuesday_short" => "Tue"
      "day_wednesday" => "Wednesday"
      "day_wednesday_short" => "Wed"
      "day_x_at_time_y" => "{day} at {time}"
      "delete" => "Delete"
      "edit_avatar" => "Edit avatar"
      "follow" => "Follow"
      "forums" => "Forums"
      "from_x_location" => "From {location}"
      "guest" => "Guest"
      "help" => "Help"
      "in_a_minute" => "In a minute"
      "in_a_moment" => "In a moment"
      "in_x_minutes" => "In {minutes} minutes"
      "later_today_at_x" => "Later today at {time}"
      "master_language" => "Master language"
      "master_style" => "Master style"
      "members" => "Members"
      "month_1" => "January"
      "month_10" => "October"
      "month_10_short" => "Oct"
      "month_11" => "November"
      "month_11_short" => "Nov"
      "month_12" => "December"
      "month_12_short" => "Dec"
      "month_1_short" => "Jan"
      "month_2" => "February"
      "month_2_short" => "Feb"
      "month_3" => "March"
      "month_3_short" => "Mar"
      "month_4" => "April"
      "month_4_short" => "Apr"
      "month_5" => "May"
      "month_5_short" => "May"
      "month_6" => "June"
      "month_6_short" => "Jun"
      "month_7" => "July"
      "month_7_short" => "Jul"
      "month_8" => "August"
      "month_8_short" => "Aug"
      "month_9" => "September"
      "month_9_short" => "Sep"
      "new_posts" => "New posts"
      "new_profile_posts" => "New profile posts"
      "no_items_to_display" => "No items to display"
      "none" => "None"
      "one_minute_ago" => "1 minute ago"
      "realms_realm_quiz_user" => "Realm Quiz User"
      "s9e_MediaSites_Footer_Credit" => "Media embeds via s9e/MediaSites"
      "show_hidden_content_by_x" => "Show hidden content by {names}"
      "show_ignored_content" => "Show ignored content"
      "showing_all_items" => "Showing all items"
      "showing_x_of_y_items" => "Showing {count} of {total} items"
      "spoiler" => "Spoiler"
      "staff_member" => "Staff member"
      "th_progress_bar_color_will_change_donate" => "Once this milestone has been reached the progress bar will change to this color. If left blank it will display the default color from your color palette."
      "there_are_x_items_in_total" => "There are {total} items in total"
      "time_am_lower" => "am"
      "time_am_upper" => "AM"
      "time_pm_lower" => "pm"
      "time_pm_upper" => "PM"
      "title_page_x" => " | Page {page}"
      "today_at_x" => "Today at {time}"
      "tomorrow_at_x" => "Tomorrow at {time}"
      "unfollow" => "Unfollow"
      "ungrouped" => "Ungrouped"
      "upload_file" => "Upload file"
      "viewing_an_error" => "Viewing an error"
      "x_b" => "{number}B"
      "x_bytes" => "{size} bytes"
      "x_gb" => "{size} GB"
      "x_k" => "{number}K"
      "x_kb" => "{size} KB"
      "x_m" => "{number}M"
      "x_mb" => "{size} MB"
      "x_minutes_ago" => "{minutes} minutes ago"
      "x_tb" => "{size} TB"
      "xfmg_browse_albums" => "Browse albums"
      "xfmg_x_seconds" => "{count} second(s)"
      "xfrm_resource_icon" => "Resource icon"
      "yesterday_at_x" => "Yesterday at {time}"
      "your_account" => "Your account"
      "th_reactplus_show_hidden_low_quality_content" => "Show hidden low quality content"
      "thcovers_no_edit_permissions" => "You are not allowed to edit this cover."
    ]
    #phrasesToLoad: array:1 [
      "thcovers_no_position_permissions" => true
    ]
    #groupsCached: array:8 [
      "reaction_title" => true
      "reactions" => true
      "trophy_title" => true
      "widget" => true
      "widget_def" => true
      "thread_prefix" => true
      "button" => true
      "nav" => true
    ]
    #date: DateTime @1726333054 {#312
      date: 2024-09-14 12:57:34.0 America/New_York (-04:00)
    }
    #dayStartTimestamps: array:6 [
      "tomorrow" => "1731560400"
      "now" => 1731543723
      "today" => "1731474000"
      "todayDow" => "3"
      "yesterday" => "1731387600"
      "week" => "1730955600"
    ]
    #dowTranslation: array:7 [
      0 => "sunday"
      1 => "monday"
      2 => "tuesday"
      3 => "wednesday"
      4 => "thursday"
      5 => "friday"
      6 => "saturday"
    ]
    #rdc: array:65 [
      1535589822 => array:1 [ …1]
      1535610093 => array:1 [ …1]
      1535727031 => array:1 [ …1]
      1535728079 => array:1 [ …1]
      1535730846 => array:1 [ …1]
      1535736041 => array:1 [ …1]
      1535736808 => array:1 [ …1]
      1535739138 => array:1 [ …1]
      1535740132 => array:1 [ …1]
      1535741807 => array:1 [ …1]
      1536205391 => array:1 [ …1]
      1536585130 => array:1 [ …1]
      1542159581 => array:1 [ …1]
      1542535931 => array:1 [ …1]
      1542593170 => array:1 [ …1]
      1542603060 => array:1 [ …1]
      1542603856 => array:1 [ …1]
      1542604517 => array:1 [ …1]
      1542604072 => array:1 [ …1]
      1542769286 => array:1 [ …1]
      1542856009 => array:1 [ …1]
      1543045278 => array:1 [ …1]
      1543066033 => array:1 [ …1]
      1543066762 => array:1 [ …1]
      1543074153 => array:1 [ …1]
      1543267571 => array:1 [ …1]
      1543270754 => array:1 [ …1]
      1543271001 => array:1 [ …1]
      1543279646 => array:1 [ …1]
      1543279877 => array:1 [ …1]
      1543280028 => array:1 [ …1]
      1543284784 => array:1 [ …1]
      1543285440 => array:1 [ …1]
      1543285948 => array:1 [ …1]
      1543291830 => array:1 [ …1]
      1543299211 => array:1 [ …1]
      1544050261 => array:1 [ …1]
      1544050585 => array:1 [ …1]
      1544053719 => array:1 [ …1]
      1544058900 => array:1 [ …1]
      1544068375 => array:1 [ …1]
      1544072774 => array:1 [ …1]
      1544073310 => array:1 [ …1]
      1544077198 => array:1 [ …1]
      1544217917 => array:1 [ …1]
      1544218316 => array:1 [ …1]
      1545074649 => array:1 [ …1]
      1545074963 => array:1 [ …1]
      1545364133 => array:1 [ …1]
      1545382863 => array:1 [ …1]
      1545385216 => array:1 [ …1]
      1545396033 => array:1 [ …1]
      1545399109 => array:1 [ …1]
      1545410777 => array:1 [ …1]
      1545424121 => array:1 [ …1]
      1545431445 => array:1 [ …1]
      1727230159 => array:1 [ …1]
      1727532427 => array:1 [ …1]
      1725892883 => array:1 [ …1]
      1726758924 => array:1 [ …1]
      1719295596 => array:1 [ …1]
      1719852249 => array:1 [ …1]
      1731536913 => array:1 [ …1]
      1720719063 => array:1 [ …1]
      1726333054 => array:1 [ …1]
    ]
  }
  "style" => Style {#321
    #id: "27"
    #lastModified: 1731439652
    #properties: array:696 [
      "adavAchievementCriteria" => array:3 [ …3]
      "adavAchievementCriterionProgressBar" => array:5 [ …5]
      "adavAchievementCriterionProgressBarInner" => array:3 [ …3]
      "adavAchievementCriterionProgressBarStatus" => array:1 [ …1]
      "adavAchievementExperience" => array:3 [ …3]
      "adavAchievementTitle" => array:2 [ …2]
      "adst_shepherdElement" => array:3 [ …3]
      "animationSpeed" => "0.2s"
      "audapp_primaryColor" => "#677e9a"
      "audapp_secondaryColor" => "#677e9a"
      "avatarBg" => "rgb(27,27,27)"
      "avatarBorderRadius" => "8px"
      "badge" => array:4 [ …4]
      "bbCodeBlock" => array:6 [ …6]
      "bbCodeBlockTitle" => array:3 [ …3]
      "bbCodeInlineCode" => array:9 [ …9]
      "blockBorder" => array:5 [ …5]
      "blockBorderRadius" => "8px"
      "blockFilterBar" => array:3 [ …3]
      "blockFooter" => array:5 [ …5]
      "blockFooterBg" => "rgb(45,45,45)"
      "blockFooterTextColor" => "rgba(255, 255, 255, 0.6)"
      "blockHeader" => array:6 [ …6]
      "blockLink" => array:4 [ …4]
      "blockLinkSelected" => array:5 [ …5]
      "blockMinorHeader" => array:6 [ …6]
      "blockMinorTabHeader" => array:5 [ …5]
      "blockMinorTabHeaderSelected" => array:2 [ …2]
      "blockPaddingH" => "16px"
      "blockPaddingV" => "16px"
      "blockTabHeader" => array:6 [ …6]
      "blockTabHeaderBg" => "transparent"
      "blockTabHeaderSelected" => array:2 [ …2]
      "blockTabHeaderTextColor" => "rgba(255, 255, 255, 0.6)"
      "blockTextHeader" => array:3 [ …3]
      "borderColor" => "rgba(255,255,255,.14)"
      "borderColorAccentContent" => "#677e9a"
      "borderColorAttention" => "#677e9a"
      "borderColorFaint" => "rgba(255,255,255,.14)"
      "borderColorFeature" => "#677e9a"
      "borderColorHeavy" => "rgba(255,255,255,.14)"
      "borderColorHighlight" => "#677e9a"
      "borderColorLight" => "rgba(255,255,255,.14)"
      "borderRadiusLarge" => "12px"
      "borderRadiusMedium" => "8px"
      "borderRadiusSmall" => "8px"
      "borderSize" => "0px"
      "borderSizeFeature" => "2px"
      "buttonBase" => array:8 [ …8]
      "buttonBg" => "fade(rgba(255, 255, 255, 0.8), 14%)"
      "buttonCta" => array:3 [ …3]
      "buttonCtaBg" => "#677e9a"
      "buttonDefault" => array:3 [ …3]
      "buttonDisabled" => array:4 [ …4]
      "buttonPrimary" => array:3 [ …3]
      "buttonPrimaryBg" => "#677e9a"
      "buttonTextColor" => "rgba(255, 255, 255, 0.8)"
      "chip" => array:5 [ …5]
      "chipHover" => array:1 [ …1]
      "chromeBg" => "mix(#677e9a, rgb(27,27,27), 10%)"
      "chromeTextColor" => "rgb(36,36,36)"
      "contentAccentBase" => array:2 [ …2]
      "contentAccentBg" => "mix(#677e9a, rgb(27,27,27), 10%)"
      "contentAccentLink" => array:1 [ …1]
      "contentAltBase" => array:2 [ …2]
      "contentAltBg" => "rgb(36,36,36)"
      "contentBase" => array:2 [ …2]
      "contentBg" => "rgb(27,27,27)"
      "contentHighlightBase" => array:2 [ …2]
      "contentHighlightBg" => "rgb(45,45,45)"
      "dataListFooter" => array:5 [ …5]
      "dataListHeader" => array:7 [ …7]
      "dataListPaddingH" => "16px"
      "dataListPaddingV" => "16px"
      "dataListSection" => array:5 [ …5]
      "editorBg" => "rgb(45,45,45)"
      "editorButtonActiveColor" => "rgba(255, 255, 255, 0.8)"
      "editorButtonColor" => "fade(mix(rgba(255, 255, 255, 0.8), rgb(255, 255, 255)), 85%)"
      "editorButtonDisabledColor" => "mix(rgb(27,27,27), rgba(255, 255, 255, 0.6), 60%)"
      "editorButtonHoverBg" => "fade(rgba(255, 255, 255, 0.8), 15%)"
      "editorButtonHoverColor" => "rgba(255, 255, 255, 0.8)"
      "editorButtonSelectedBg" => "fade(rgba(255, 255, 255, 0.8), 15%)"
      "editorButtonSize" => "18px"
      "editorColor" => "rgba(255, 255, 255, 0.8)"
      "editorFocusBg" => "xf-intensify(rgb(45,45,45), 1%)"
      "editorFocusColor" => "rgba(255, 255, 255, 0.8)"
      "editorImageHandles" => "#677e9a"
      "editorSelectionBg" => "rgb(36,36,36)"
      "editorSelectionColor" => "rgba(255, 255, 255, 0.8)"
      "editorToolsFocusBg" => "linear-gradient(180deg, rgb(45,45,45), xf-intensify(rgb(45,45,45), 1%))"
      "editorToolsOverflowBg" => "xf-intensify(rgb(45,45,45), 3%)"
      "elementSpacer" => "16px"
      "emailBg" => "rgb(18,18,18)"
      "emailBorderColor" => "rgba(255,255,255,.14)"
      "emailContentAltBg" => "rgb(36,36,36)"
      "emailContentBg" => "rgb(27,27,27)"
      "emailFont" => "ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji"
      "emailHeaderColor" => "rgba(255, 255, 255, 0.8)"
      "emailLinkColor" => "#677e9a"
      "emailTextColor" => "rgba(255, 255, 255, 0.8)"
      "emailTextColorMuted" => "rgba(255, 255, 255, 0.6)"
      "fixedMessage" => array:7 [ …7]
      "flashMessage" => array:5 [ …5]
      "fontFamilyBody" => "ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji"
      "fontFamilyUi" => "ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji"
      "fontSizeLarge" => "1.6rem"
      "fontSizeLarger" => "2.0rem"
      "fontSizeLargest" => "2.4rem"
      "fontSizeNormal" => "1.6rem"
      "fontSizeSmall" => "1.4rem"
      "fontSizeSmaller" => "1.4rem"
      "fontSizeSmallest" => "1.1rem"
      "formExplain" => array:2 [ …2]
      "formHint" => array:2 [ …2]
      "formLabel" => array:3 [ …3]
      "formRowPaddingHInner" => "16px"
      "formRowPaddingHOuter" => "16px"
      "formRowPaddingV" => "16px"
      "formSectionHeader" => array:6 [ …6]
      "formSubmitRow" => array:3 [ …3]
      "globalActionColor" => "#677e9a"
      "inlineModBar" => array:6 [ …6]
      "inlineModHighlightColor" => "mix(#677e9a, rgb(27,27,27), 10%)"
      "input" => array:10 [ …10]
      "inputBgColor" => "rgb(45,45,45)"
      "inputDisabled" => array:2 [ …2]
      "inputFocus" => array:3 [ …3]
      "inputFocusBgColor" => "xf-intensify(rgb(45,45,45), 1%)"
      "inputTextColor" => "rgba(255, 255, 255, 0.8)"
      "link" => array:2 [ …2]
      "linkColor" => "#677e9a"
      "linkHover" => array:2 [ …2]
      "linkHoverColor" => "xf-intensify(#677e9a, 17%)"
      "majorHeadingBg" => "transparent"
      "majorHeadingTextColor" => "rgb(255, 255, 255)"
      "memberHeader" => array:3 [ …3]
      "memberHeaderBlurbContainerBanner" => array:4 [ …4]
      "memberHeaderName" => array:2 [ …2]
      "memberTooltipBlurbContainerBanner" => array:5 [ …5]
      "memberTooltipHeader" => array:4 [ …4]
      "memberTooltipName" => array:1 [ …1]
      "menu" => array:6 [ …6]
      "menuBorderRadius" => "8px"
      "menuFeatureBorderColor" => "rgba(255,255,255,.14)"
      "menuFooter" => array:6 [ …6]
      "menuHeader" => array:5 [ …5]
      "menuLinkRow" => array:2 [ …2]
      "menuLinkRowSelected" => array:3 [ …3]
      "menuTabHeader" => array:5 [ …5]
      "menuTabHeaderSelected" => array:2 [ …2]
      "messageNewIndicator" => array:8 [ …8]
      "messagePadding" => "16px"
      "messagePaddingSmall" => "16px"
      "messageSignature" => array:7 [ …7]
      "messageUserBlock" => array:3 [ …3]
      "messageUserElements" => array:9 [ …9]
      "metaThemeColor" => "#677e9a"
      "minorBlockContent" => array:3 [ …3]
      "minorHeadingTextColor" => "rgba(255, 255, 255, 0.8)"
      "nodeIconReadColor" => "#fff"
      "nodeIconUnreadColor" => "#fff"
      "nodeListDescriptionDisplay" => "inline"
      "overlayHeader" => array:8 [ …8]
      "overlayMaskColor" => "rgba(0, 0, 0, .3)"
      "paddingLarge" => "16px"
      "paddingLargest" => "24px"
      "paddingMedium" => "16px"
      "paddingSmall" => "8px"
      "pageBackground" => array:1 [ …1]
      "pageBg" => "rgb(18,18,18)"
      "pageEdgeSpacer" => "30px"
      "paletteAccent1" => "#677e9a"
      "paletteAccent2" => "#677e9a"
      "paletteAccent3" => "#677e9a"
      "paletteColor1" => "rgb(27,27,27)"
      "paletteColor2" => "rgb(36,36,36)"
      "paletteColor3" => "rgb(45,45,45)"
      "paletteColor4" => "rgb(18,18,18)"
      "paletteColor5" => "mix(#677e9a, rgb(27,27,27), 10%)"
      "paletteNeutral1" => "rgb(255, 255, 255)"
      "paletteNeutral2" => "rgba(255, 255, 255, 0.6)"
      "paletteNeutral3" => "rgba(255, 255, 255, 0.8)"
      "profilePostCommentToggle" => 1
      "progressBarColor" => "#677e9a"
      "publicFaviconUrl" => "styles/snipershide/snipershide/sh-favicon.svg"
      "publicFooter" => array:2 [ …2]
      "publicFooterLink" => array:1 [ …1]
      "publicHeader" => array:3 [ …3]
      "publicHeaderAdjustColor" => ""
      "publicIconUrl" => "data/assets/logo/192.png"
      "publicIconUrlLarge" => "data/assets/logo/512.png"
      "publicLogoHeight" => "60"
      "publicLogoUrl" => "styles/snipershide/snipershide/logo-top.svg"
      "publicLogoWidth" => "417"
      "publicMetadataLogoUrl" => "https://snipershide.com/shooting/styles/snipershide/snipershide/SHMetaplatev2.png"
      "publicNav" => array:3 [ …3]
      "publicNavCollapseWidth" => "1000px"
      "publicNavPaddingH" => "12px"
      "publicNavSelected" => array:2 [ …2]
      "publicNavTab" => array:5 [ …5]
      "publicNavTabHover" => array:2 [ …2]
      "publicNavTabMenuOpen" => array:1 [ …1]
      "publicStaffBar" => array:5 [ …5]
      "publicSubNav" => array:5 [ …5]
      "publicSubNavElHover" => array:1 [ …1]
      "publicSubNavElMenuOpen" => array:1 [ …1]
      "publicSubNavPaddingV" => "2px"
      "responsiveEdgeSpacerRemoval" => "1000px"
      "responsiveWide" => "1000px"
      "scrollJumpButtons" => "both"
      "sidebarSpacer" => "16px"
      "sidebarWidth" => "300px"
      "standaloneTab" => array:4 [ …4]
      "standaloneTabSelected" => array:2 [ …2]
      "starEmptyColor" => "rgba(255,255,255,.14)"
      "starFullColor" => "#677e9a"
      "styleType" => "dark"
      "subNavBg" => "rgb(45,45,45)"
      "subNavTextColor" => "rgba(255, 255, 255, 0.6)"
      "textColor" => "rgba(255, 255, 255, 0.8)"
      "textColorAccentContent" => "#677e9a"
      "textColorAttention" => "#677e9a"
      "textColorDimmed" => "rgba(255, 255, 255, 0.6)"
      "textColorEmphasized" => "#677e9a"
      "textColorFeature" => "rgba(255, 255, 255, 0.8)"
      "textColorMuted" => "rgba(255, 255, 255, 0.6)"
      "th_nodeBody" => array:1 [ …1]
      "th_reactplus_countStyling" => array:8 [ …8]
      "thdonate_progressBar" => array:1 [ …1]
      "thdonate_progressBarContainer" => array:3 [ …3]
      "thfeature_slider" => array:1 [ …1]
      "thuix_webapp_backgroundColor" => "#677e9a"
      "thxpress_dotsNavigation" => 1
      "thxpress_postExcerptTitle" => array:4 [ …4]
      "tl_backgroundColor" => "rgb(45,45,45)"
      "tl_backgroundLightColor" => "rgb(27,27,27)"
      "tl_fontColor" => "rgba(255, 255, 255, 0.8)"
      "tl_fontDarkColor" => "rgba(255, 255, 255, 0.8)"
      "tl_fontExtraLightColor" => "rgba(255, 255, 255, 0.6)"
      "tl_fontLightColor" => "rgba(255, 255, 255, 0.6)"
      "tl_lineColor" => "rgba(255,255,255,.14)"
      "tl_lineLightColor" => "rgba(255,255,255,.14)"
      "tl_overlayColor" => "rgb(45,45,45)"
      "tl_primaryColor" => "#677e9a"
      "tl_secondaryColor" => "#677e9a"
      "tooltip" => array:8 [ …8]
      "uix_abridgedSignatures" => 1
      "uix_activeNavTitle" => 0
      "uix_activeNavTitleStyle" => array:7 [ …7]
      "uix_additionalCss" => "ac_app.less,realms.less"
      "uix_alertsUnread" => 0
      "uix_avatarShape" => "1"
      "uix_backstretch" => 0
      "uix_backstretchDuration" => "4000"
      "uix_backstretchFade" => "500"
      "uix_backstretchImages" => ""styles/acui/images/bg/1.jpg", "styles/acui/images/bg/2.jpg", "styles/acui/images/bg/3.jpg""
      "uix_backstretchSelector" => "body"
      "uix_betaMode" => 0
      "uix_blockBody" => []
      "uix_blockContainer" => array:3 [ …3]
      "uix_blockMessage" => array:3 [ …3]
      "uix_blockOuter" => array:1 [ …1]
      "uix_blockTabHeaderTab" => []
      "uix_borderRadiusJs" => 0
      "uix_borderRadiusSelectors" => ".p-footer-inner, .uix_extendedFooter, .p-nav, .p-sectionLinks, .p-staffBar, .p-header, #wpadminbar"
      "uix_bottomBreadcrumbLocation" => "belowMainContainer"
      "uix_brandmarkImage__breakpoint" => "0"
      "uix_breadcrumbItem" => array:1 [ …1]
      "uix_breadcrumbItem__active" => array:1 [ …1]
      "uix_breadcrumbStyle" => array:1 [ …1]
      "uix_breadcrumbWrapper" => []
      "uix_breadcrumbWrapperBottom" => array:1 [ …1]
      "uix_buttonActive" => array:2 [ …2]
      "uix_buttonCtaActive" => []
      "uix_buttonCtaHover" => array:1 [ …1]
      "uix_buttonHover" => array:2 [ …2]
      "uix_buttonLink" => array:4 [ …4]
      "uix_buttonPrimaryActive" => []
      "uix_buttonPrimaryHover" => array:1 [ …1]
      "uix_buttonRipple" => 1
      "uix_buttonSmall" => array:5 [ …5]
      "uix_canvas" => array:2 [ …2]
      "uix_canvasHeader" => []
      "uix_canvasNavItem" => array:2 [ …2]
      "uix_canvasNavItemActive" => array:2 [ …2]
      "uix_canvasNavItemHover" => array:1 [ …1]
      "uix_canvasNavSubItem" => array:2 [ …2]
      "uix_categoryCollapse" => 1
      "uix_categoryDescription" => array:5 [ …5]
      "uix_categoryDescriptionDisplay" => "tooltip"
      "uix_categoryIconStyle" => array:3 [ …3]
      "uix_categoryStrip" => array:5 [ …5]
      "uix_categoryStripIcons" => 0
      "uix_categoryStripOutsideWrapper" => 0
      "uix_clickableThreads" => 0
      "uix_collapseExtraInfo" => 1
      "uix_collapseStaffbarLinks" => 1
      "uix_collapseibleSubForums" => 0
      "uix_collapsibleSidebar" => 1
      "uix_collapsibleStickyThreads" => 1
      "uix_condenseVisitorTabs" => 0
      "uix_contentWrapper" => "0"
      "uix_contentWrapperStyle" => array:3 [ …3]
      "uix_copyrightOrder" => "30"
      "uix_defaultNavIcon" => 1
      "uix_defaultSidebarIcon" => 1
      "uix_detachedNavigation" => 1
      "uix_discussionList" => array:1 [ …1]
      "uix_discussionListAnimation" => 0
      "uix_discussionListCollapseWidth" => "1000px"
      "uix_discussionListItem" => []
      "uix_discussionListItemDeleted" => []
      "uix_discussionListItemEven" => ""
      "uix_discussionListItemHover" => ""
      "uix_discussionListItemModerated" => []
      "uix_discussionListItemSticky" => []
      "uix_discussionListTitle" => array:3 [ …3]
      "uix_discussionListTitleUnread" => array:1 [ …1]
      "uix_dropdownHover" => 0
      "uix_elevation1" => "0 10px 20px rgba(0,0,0,0.09), 0 6px 6px rgba(0,0,0,0.15)"
      "uix_elevation2" => "0 3px 10px 2px rgba(0,0,0,.1), 0 1px 18px 0px rgba(0, 0, 0, 0.12), 0 3px 5px 0 rgba(0, 0, 0, 0.2)"
      "uix_enableExtendedFooter" => 0
      "uix_enableMainTabs" => 0
      "uix_enableWelcomeHeaderImage" => 0
      "uix_extendedFooterOrder" => "10"
      "uix_extendedFooterStyle" => array:6 [ …6]
      "uix_extendedFooter__whiteText" => 0
      "uix_externalLinkIcon" => 1
      "uix_fab" => "mobile"
      "uix_fabBarBackground" => "rgb(27,27,27)"
      "uix_fabScroll" => 0
      "uix_fabVw" => "1000px"
      "uix_footerChooser" => array:2 [ …2]
      "uix_footerChooserHover" => array:1 [ …1]
      "uix_footerCopyrightRow" => array:4 [ …4]
      "uix_footerIcons" => 0
      "uix_footerInsideContent" => 0
      "uix_footerLinkHover" => array:2 [ …2]
      "uix_footerMenu" => array:1 [ …1]
      "uix_footerMenuOrder" => "20"
      "uix_footerWidget" => array:4 [ …4]
      "uix_footerWidgetBody" => []
      "uix_footerWidgetFooter" => array:4 [ …4]
      "uix_footerWidgetHeader" => array:5 [ …5]
      "uix_footerWidgetPadding" => "16px"
      "uix_footerWidgetRow" => array:2 [ …2]
      "uix_footerWidgetWidth" => "280px"
      "uix_forceCoverCopyright" => 0
      "uix_forceCoverExtendedFooter" => 0
      "uix_forceCoverFooterMenu" => 0
      "uix_glyphCategoryIcon" => ""
      "uix_glyphForumIcon" => ""
      "uix_glyphLinkIcon" => ""
      "uix_glyphPageIcon" => ""
      "uix_googleFonts" => ""
      "uix_headerWhiteSpace" => "0px"
      "uix_headerWrapper" => array:1 [ …1]
      "uix_headingFont" => "ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji"
      "uix_headingFontWeight" => "400"
      "uix_headingFontWeightHeavy" => "700"
      "uix_hideElementsDuringJSLoad" => 1
      "uix_hideExtendedFooterMobile" => 0
      "uix_hideNodeLastPost" => 0
      "uix_hideNodeStats" => 0
      "uix_hideSingleCrumb" => 1
      "uix_hideStyleChoose" => 0
      "uix_hideTopPagenavMobile" => 1
      "uix_homeCrumbIcon" => 1
      "uix_iconFont" => array:1 [ …1]
      "uix_iconFontFamily" => "material"
      "uix_iconSize" => "18px"
      "uix_iconSizeLarge" => "24px"
      "uix_imageForumIcon" => array:2 [ …2]
      "uix_imageForumUnreadIcon" => array:2 [ …2]
      "uix_imageIcon" => array:1 [ …1]
      "uix_imageLinkIcon" => array:2 [ …2]
      "uix_imagePageIcon" => array:2 [ …2]
      "uix_imagePath" => "styles/acui"
      "uix_jsPath" => "acui"
      "uix_lazyLoadSupport" => 0
      "uix_loginStyle" => "link"
      "uix_loginTriggerPosition" => "navigation"
      "uix_logoIcon" => "mdi mdi-tune"
      "uix_logoIconStyle" => array:2 [ …2]
      "uix_logoSmall" => ""
      "uix_logoText" => "UI.X"
      "uix_logoTextBreakpoint" => "650px"
      "uix_logoText__style" => array:4 [ …4]
      "uix_logoWidth" => "222.4px"
      "uix_mainTabsBarStyling" => array:1 [ …1]
      "uix_mainTabsHeight" => "50px"
      "uix_mainTabsSticky" => 0
      "uix_materialAvatars" => 1
      "uix_message" => array:2 [ …2]
      "uix_messageActionBar" => []
      "uix_messageAnimation" => 0
      "uix_messageAttachments" => array:3 [ …3]
      "uix_messageBody" => array:3 [ …3]
      "uix_messageControl" => array:7 [ …7]
      "uix_messageControlHover" => array:3 [ …3]
      "uix_messageLikes" => array:5 [ …5]
      "uix_messageMain" => array:1 [ …1]
      "uix_messageMeta" => array:4 [ …4]
      "uix_messageNotice" => array:2 [ …2]
      "uix_metaCell" => []
      "uix_mobileTabsNav" => 1
      "uix_navAboveHeader" => 0
      "uix_navLogoVertSpacing" => "11px"
      "uix_navTabIconStyle" => array:2 [ …2]
      "uix_navTabIcons" => 0
      "uix_navigationBarHeight" => "72px"
      "uix_navigationType" => "default"
      "uix_newNodeMarker" => 1
      "uix_newNodeMarkerStyle" => array:8 [ …8]
      "uix_nodeAnimations" => 0
      "uix_nodeBlockBody" => array:2 [ …2]
      "uix_nodeBody" => array:2 [ …2]
      "uix_nodeBodyEven" => ""
      "uix_nodeBodyHover" => array:2 [ …2]
      "uix_nodeClickable" => 1
      "uix_nodeContainer" => array:4 [ …4]
      "uix_nodeDescription" => array:3 [ …3]
      "uix_nodeIconImages" => 0
      "uix_nodeIconStyle" => array:4 [ …4]
      "uix_nodeIconWidth" => "51px"
      "uix_nodePadding" => "16px"
      "uix_nodeStatsHover" => 0
      "uix_nodeStatsIcons" => 1
      "uix_nodeTitle" => array:4 [ …4]
      "uix_nodeTitle__unread" => []
      "uix_noticeLocation" => "aboveMainContainer"
      "uix_onlineIndicator" => "default"
      "uix_originalPoster" => "icon"
      "uix_pageAnimation" => 0
      "uix_pageStyle" => "covered"
      "uix_pageTitle" => array:3 [ …3]
      "uix_pageWidthToggle" => "fixed"
      "uix_pageWrapper" => array:4 [ …4]
      "uix_parallax" => 0
      "uix_parallaxImage" => "styles/acui/images/welcome-banner.png"
      "uix_parallaxPosition" => "center"
      "uix_parallaxSelector" => ".uix_welcomeSection"
      "uix_postBitAvatarSize" => "small"
      "uix_postBitIcons" => 1
      "uix_prefixAccent" => "#677e9a"
      "uix_prefixBlue" => "#2196F3"
      "uix_prefixGray" => "#616161"
      "uix_prefixGreen" => "#4CAF50"
      "uix_prefixLightGreen" => "#8BC34A"
      "uix_prefixOlive" => "#689F38"
      "uix_prefixOrange" => "#FF9800"
      "uix_prefixPrimary" => "#677e9a"
      "uix_prefixRed" => "#D32F2F"
      "uix_prefixRedSkyBlue" => "#03A9F4"
      "uix_prefixRoyalBlue" => "#0D47A1"
      "uix_prefixSilver" => "#CFD8DC"
      "uix_prefixYellow" => "#FFEB3B"
      "uix_primaryColor" => "#677e9a"
      "uix_primaryColorDarker" => "#677e9a"
      "uix_removeBottomBreadcrumb" => 0
      "uix_removeHeaderWrapper" => 1
      "uix_removeIndexPageTitle" => 0
      "uix_removeMessageArrow" => 1
      "uix_removePageAction" => 0
      "uix_removeRegisterText" => 0
      "uix_removeVisitorTabsText" => 1
      "uix_removeWhatsNewButtons" => 1
      "uix_responsiveLogoFontSize" => ""
      "uix_rightAlignNavigation" => 0
      "uix_scrollableSidebar" => 0
      "uix_searchBar" => array:5 [ …5]
      "uix_searchBarFocus" => array:1 [ …1]
      "uix_searchBarHeight" => "36px"
      "uix_searchBarPlaceholderColor" => "rgba(255, 255, 255, 0.6)"
      "uix_searchBarPlaceholderFocusColor" => "rgba(255, 255, 255, 0.8)"
      "uix_searchBarWidth" => "250px"
      "uix_searchButton" => 0
      "uix_searchIcon" => array:6 [ …6]
      "uix_searchIconBehavior" => "expandMobile"
      "uix_searchIconFocusColor" => "rgba(255, 255, 255, 0.6)"
      "uix_searchPosition" => "header"
      "uix_search_maxResponsiveWidth" => "10000px"
      "uix_secondaryColor" => "#677e9a"
      "uix_sectionBg" => "#677e9a"
      "uix_sectionLinksStickyStyle" => array:1 [ …1]
      "uix_separateThreads" => 1
      "uix_shareWidgetModal" => 1
      "uix_sideNavCollapsed" => 0
      "uix_sideNavigationAnimation" => 0
      "uix_sidebarBlockRow" => []
      "uix_sidebarBreakpoint" => "1000px"
      "uix_sidebarIcons" => 0
      "uix_sidebarLocation" => "right"
      "uix_sidebarMobileCanvas" => 1
      "uix_sidebarNavWidth" => "210px"
      "uix_sidebarNavigationStyle" => array:1 [ …1]
      "uix_sidebarTriggerPhrase" => 0
      "uix_sidebarTriggerPosition" => "sectionLinks"
      "uix_sidebarWidgetAnimations" => 0
      "uix_sidebarWidgetFooter" => []
      "uix_sidebarWidgetHeading" => array:3 [ …3]
      "uix_sidebarWidgetWrapper" => array:1 [ …1]
      "uix_signatureHoverEnabled" => 0
      "uix_signatureMaxHeight" => "100"
      "uix_similarScrollNotice" => 1
      "uix_socialMediaIcon" => array:1 [ …1]
      "uix_socialMediaPosition" => "copyright"
      "uix_staffBarBreakpoint" => "1000px"
      "uix_staffBarTab" => array:4 [ …4]
      "uix_staffBarTabHover" => array:2 [ …2]
      "uix_stickyCategoryStrips" => 0
      "uix_stickyNavHeight" => "72px"
      "uix_stickyNavigationStyle" => array:2 [ …2]
      "uix_stickySectionLinkHeight" => "40px"
      "uix_stickySidebar" => "disabled"
      "uix_stickySidebarCalcDelay" => "100"
      "uix_stickySidenav" => 1
      "uix_stickyStaffBar" => 1
      "uix_stickyStaffBarHeight" => "40px"
      "uix_stickyStaffbarStyle" => []
      "uix_structPaddingH" => "16px"
      "uix_structPaddingV" => "16px"
      "uix_subForumTitle" => array:1 [ …1]
      "uix_swipeSupport" => 0
      "uix_tabBarLocation" => "header"
      "uix_tablinksInSideNav" => 1
      "uix_tag" => []
      "uix_tagHover" => []
      "uix_textSelection" => array:2 [ …2]
      "uix_threadField" => array:3 [ …3]
      "uix_threadListSeparator" => array:4 [ …4]
      "uix_titlebar" => array:5 [ …5]
      "uix_titlebarLocation" => "mainContainerTop"
      "uix_topBreadcrumbLocation" => "aboveMainContainer"
      "uix_transition" => "cubic-bezier(0.4, 0, 0.2, 1)"
      "uix_userTabsPosition" => "navigation"
      "uix_version" => "2.2.15.0.2"
      "uix_viewportCenterLogo" => "0px"
      "uix_viewportCollapseStaffLinks" => "1000px"
      "uix_viewportCollapseStats" => "1000px"
      "uix_viewportCondenseVisitorTabs" => "10000px"
      "uix_viewportRemoveRegisterText" => "650px"
      "uix_viewportRemoveVisitorTabsText" => "100000px"
      "uix_viewportShowLogoBlock" => "100%"
      "uix_viewportWidthRemoveSubNav" => "1px"
      "uix_visitorPanelIcons" => 0
      "uix_visitorTabsMobile" => "initial"
      "uix_voteActionButton" => "mobile"
      "uix_welcomeSectionForumListOnly" => 1
      "uix_welcomeSectionIcon__style" => array:3 [ …3]
      "uix_welcomeSectionInner" => array:2 [ …2]
      "uix_welcomeSectionLocation" => "sidebar"
      "uix_welcomeSectionOverlay" => ""
      "uix_welcomeSectionText__style" => array:4 [ …4]
      "uix_welcomeSectionTitle__style" => array:2 [ …2]
      "uix_welcomeSectionVisible" => "guests"
      "uix_welcomeSection__buttonText" => "Register"
      "uix_welcomeSection__icon" => ""
      "uix_welcomeSection__style" => array:3 [ …3]
      "uix_welcomeSection__text" => "Get access to live stream, lessons, the post exchange, and chat with other snipers."
      "uix_welcomeSection__title" => "Join the Hide community"
      "uix_welcomeSection__url" => "register"
      "uix_widgetPadding" => "16px"
      "xpress_articleListLayout" => "list"
      "xpress_authorBlock" => array:10 [ …10]
      "xpress_dropcap" => 0
      "xpress_featuredArticleStyle" => "carousel"
      "xpress_featuredExcerptLength" => "150"
      "xpress_featuredItemsCount" => "3"
      "xpress_removeFeaturedExcerpt" => 1
      "adavAchievement" => []
      "adavAchievementCriterionTitle" => []
      "adavAchievementCriterionTitleCompleted" => array:1 [ …1]
      "adavAchievementTitleCommon" => []
      "adavAchievementTitleEpic" => array:1 [ …1]
      "adavAchievementTitleLegendary" => array:1 [ …1]
      "adavAchievementTitleRare" => array:1 [ …1]
      "adavAchievementTitleUncommon" => array:1 [ …1]
      "adavAchievementTitleUnique" => array:1 [ …1]
      "adav_memberLevelBadeLocation" => "stats"
      "audfeeds_chromeless_tabs" => 0
      "audfeeds_tabbar_location" => "aboveMainContent"
      "audfeeds_tabsWrapper" => []
      "avatarDefaultImage" => ""
      "avatarDefaultTextContent" => "?"
      "avatarDefaultType" => "text"
      "avatarDynamicFont" => "'Arial', sans-serif"
      "avatarDynamicLineHeight" => "1.04"
      "avatarDynamicTextPercent" => "60"
      "badgeHighlighted" => array:2 [ …2]
      "bbCodeBlockExpandHeight" => "150px"
      "bbCodeImgFloatMargin" => "0.25em"
      "bbCodeImgFloatMarginAfter" => "1.35em"
      "bbCodeImgLarge" => "512px"
      "bbCodeImgMedium" => "128px"
      "bbCodeImgSmall" => "64px"
      "borderSizeMinorFeature" => "2px"
      "editorToolsBg" => "transparent"
      "emailPublicLogoUrl" => ""
      "errorBg" => "rgb(253, 233, 233)"
      "errorColor" => "rgb(200, 68, 72)"
      "errorFeatureColor" => "rgb(200, 68, 72)"
      "findThreadsNavStyle" => "tabs"
      "fontAwesomeWeight" => "400"
      "fontFamilyCode" => "Monaco, Menlo, Consolas, 'Roboto Mono', 'Andale Mono', 'Ubuntu Mono', monospace"
      "fontWeightHeavy" => "700"
      "fontWeightLight" => "300"
      "fontWeightNormal" => "400"
      "formLabelWidth" => "33%"
      "formResponsive" => "540px"
      "formSubmitSticky" => 1
      "lineHeightDefault" => "1.4"
      "memberHeaderNameBanner" => array:1 [ …1]
      "memberTooltipNameBanner" => array:1 [ …1]
      "messageSingleColumnWidth" => "650px"
      "messageUserBlockWidth" => "120px"
      "nfCalendarDateIcons" => 0
      "nodeListSubDisplay" => "menu"
      "noticeScrollInterval" => "6"
      "overlayMaskBlur" => "0px"
      "overlayTopMargin" => "4vh"
      "pageNavStyle" => "mixed"
      "pageWidthMax" => "1200px"
      "publicIconsMaskable" => 0
      "publicLogoUrl2x" => ""
      "publicNavPaddingV" => "8px"
      "publicNavSticky" => "primary"
      "publicPushBadgeUrl" => "styles/default/xenforo/bell.png"
      "publicPwaInstallVideoUrl" => "styles/default/xenforo/add_to_home.mp4"
      "publicSubNavPaddingH" => "8px"
      "reactionSummaryOnLists" => ""
      "responsiveMedium" => "650px"
      "responsiveNarrow" => "480px"
      "successBg" => "rgb(218, 243, 216)"
      "successColor" => "rgb(61, 121, 63)"
      "successFeatureColor" => "rgb(99, 178, 101)"
      "th_backgroundSelector_nodes" => ".node--id{node_id} > .node-body"
      "th_enableGrid_nodes" => 0
      "th_enableGrid_nodes_advanced" => 0
      "th_enableNodeFooter_nodes" => 1
      "th_enableStyling_nodes" => 0
      "th_imageOverlay" => "rgba(0,0,0,.4)"
      "th_nodeGutter" => "10px"
      "th_reactplus_condensedSummary" => 0
      "th_reactplus_countMin" => "1"
      "th_reactplus_showCounter" => 0
      "th_textSelector_nodes" => ".node--id{node_id} > .node-body, .node--id{node_id} > .node-body a"
      "th_uix_staffMessageBlock" => []
      "th_uix_staffMessageNewIndicator" => []
      "th_uix_staffMessageSignature" => []
      "th_uix_staffMessageUserBlock" => []
      "th_uix_threadStarterMessageBlock" => []
      "th_uix_threadStarterMessageNewIndicator" => []
      "th_uix_threadStarterMessageSignature" => []
      "th_uix_threadStarterMessageUserBlock" => []
      "thdonate_separateCompletedCampaigns" => 0
      "thfeature_defaultFeatureBackground" => ""
      "thfeature_display_style" => "default"
      "thfeature_firstPost_article" => 1
      "thfeature_firstPost_author" => 1
      "thfeature_firstPost_style" => array:2 [ …2]
      "thfeature_icon_size" => "l"
      "thfeature_icon_style" => "default"
      "thfeature_pageTitle" => 0
      "thmonetize_userUpgradeCurrency" => array:1 [ …1]
      "thmonetize_userUpgradeLength" => array:1 [ …1]
      "thmonetize_userUpgradeOccurrence" => array:1 [ …1]
      "thmonetize_userUpgradePrice" => array:1 [ …1]
      "thmonetize_userUpgradeShapeBorderWidth" => "12px"
      "thmonetize_userUpgradeShapeWidth" => "220px"
      "thnodes_enable_header_styling_categoryView" => 0
      "thnodes_enable_header_styling_forumView" => 0
      "thnodes_enable_header_styling_threadView" => 0
      "thnodes_enable_icons" => 0
      "thnodes_show_header_icon" => 0
      "thuix_webapp_icon192x192" => ""
      "thuix_webapp_icon512x512" => ""
      "thxpress_articleFeaturedImageCover" => 1
      "thxpress_carouselItems" => "1"
      "thxpress_excerpt" => 1
      "thxpress_excerptLimit" => "55"
      "thxpress_hideSignature" => 0
      "thxpress_postThumbnails" => 1
      "thxpress_showFunctionalTags" => 0
      "voteNegativeColor" => "rgb(200, 68, 72)"
      "votePositiveColor" => "rgb(99, 178, 101)"
      "warningBg" => "rgb(251, 247, 226)"
      "warningColor" => "rgb(132, 101, 61)"
      "warningFeatureColor" => "rgb(220, 218, 84)"
      "whatsNewNavStyle" => "tabs"
      "xfmgCategoryList" => "container"
      "xpress_articleThumbnailSize" => "thumbnail"
      "xpress_categoryScroller" => 1
      "xpress_removeFeaturedMeta" => 0
      "xpress_vwColumnBreakpoint" => "650px"
      "zIndexMultiplier" => "100"
    ]
    #options: array:14 [
      "style_id" => 27
      "parent_id" => 26
      "parent_list" => array:6 [ …6]
      "title" => "Realms: Sniper's Hide (Dark)"
      "description" => ""
      "assets" => []
      "effective_assets" => []
      "user_selectable" => true
      "designer_mode" => null
      "th_product_id_uix" => 0
      "th_product_version_uix" => null
      "th_primary_child_uix" => false
      "th_child_style_xml_uix" => ""
      "th_child_style_cache_uix" => []
    ]
  }
  "isRtl" => false
  "options" => ArrayObject {#229
    -storage: array:573 [
      "acpSearchExclude" => []
      "activitySummaryEmail" => array:4 [ …4]
      "activitySummaryEmailBatchLimit" => "100"
      "ad_lb_alertTop" => "15"
      "ad_lb_awardTop" => "10"
      "ad_lb_cache" => "5"
      "ad_lb_defaultSort" => "weekly"
      "ad_lb_enable_pagination" => "1"
      "ad_lb_incrementNumber" => "5"
      "ad_lb_rankChanges" => "1"
      "ad_lb_types" => array:5 [ …5]
      "ad_lb_userEntry" => "1"
      "ad_lb_userEntry_rank" => "1"
      "adav_level_formula" => "logarithmic"
      "adav_level_formula_data" => array:4 [ …4]
      "adca_dismissDuration" => "0"
      "adca_dismissible" => "1"
      "adca_notifyCutoff" => "7"
      "adca_notifyUserAfter" => "7"
      "addBanUserGroup" => "23"
      "adminRequireTfa" => "0"
      "adsDisallowedTemplates" => """
        error\n
        login\n
        login_password_confirm\n
        login_two_step\n
        message_page\n
        register_complete\n
        register_connected_account\n
        register_confirm\n
        register_form
        """
      "akismetKey" => "8be4acf584c1"
      "alertExpiryDays" => "3"
      "alertsPerPage" => "25"
      "alertsPopupExpiryDays" => "7"
      "allowGuestRte" => "1"
      "allowVideoUploads" => array:2 [ …2]
      "allowedCodeLanguages" => """
        apacheconf\n
        applescript\n
        aspnet\n
        bash\n
        c\n
        clike\n
        coffeescript\n
        cpp\n
        csharp\n
        css\n
        diff\n
        git\n
        html\n
        http\n
        ini\n
        java\n
        javascript\n
        json\n
        jsx\n
        less\n
        makefile\n
        markdown\n
        nginx\n
        objectivec\n
        perl\n
        php\n
        python\n
        ruby\n
        sass\n
        scss\n
        sql\n
        svg\n
        swift\n
        wiki\n
        xml\n
        yaml
        """
      "approveSharedBannedRejectedIp" => array:2 [ …2]
      "attachmentExtensions" => """
        zip\n
        txt\n
        pdf\n
        png\n
        jpg\n
        jpeg\n
        jpe\n
        gif
        """
      "attachmentMaxDimensions" => array:2 [ …2]
      "attachmentMaxFileSize" => "25000"
      "attachmentMaxPerMessage" => "25"
      "attachmentThumbnailDimensions" => "150"
      "audapi_oauthEncryptionKey" => "hacxn11Rc7qZVYsNav1FwiFV3dkluCMUZw81Czgdjg0="
      "audapi_oauthPrivateKey" => """
        -----BEGIN PRIVATE KEY-----\n
        MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDq+QDCK3Xe/IMi\n
        0SgreLG/PSnt6AK5L1DNvjpWmic4EjMMcAej7SB9J5gxUUQAoPClERbAwrplb7Zl\n
        Fq2udfIR6HXVkGKYq6uiLKeNKgKT4cFSjoQ73JnfPHJQwQG7aHvLyz8Bz6u2u9fJ\n
        YlBRu2oFhDEmie0kgAbXYD9by3jYTv/hSp7gTDT8TdHnMc4GKqcfk5qhnJn++uKy\n
        QzNSLsZsq86bANUfu8y6HEMV8qwjGpzZ8X3TlbmcCxuvNN3EDiU4GGPdsuyQbMXv\n
        II2FSE4OfSwAPp6uBJuTDhSD6pUyV6Byk7x6iKis25KndHBcRqVSY7G1Uw3VzRFg\n
        4RiwczvvAgMBAAECggEBAJm9UkG5LeY4UZT2RNIsph/6ZPTEWQPRcY0saf8/3WlS\n
        fxQkONuIyzkYLvwVr+i5ZLqb88crocm8zhpWPE1p3njZIEAbuGcr66CwlvBGDGm1\n
        zEe3980zCXqGkkVEA14bfuRYl2EX/8IQJaAeM29GsJfrZj1RAVhgbBl/X/UvrGHa\n
        DZ8ppq4duRn9VBg3oHLeS42jZbgAwoW2RS9ffHpby4Ju9PDTo8IeArJamndofB7E\n
        QaaTPVkNp4RULEFvQb4p58DHK7JBbNvLVMcp+bmdTRXKYjAoXUdjqg+USdabKZsj\n
        /HZ6DFHICWa5/RubC9mBvm67CK1xADKeVrrf1th/bAECgYEA9dZFk67dnCwrm4Yn\n
        N53q2aMSAv7zM+gS1LBBKFNpolSfDvGiW1AQ83gXa7x9ULjQkE7bzg+lrA5YjwU+\n
        cp+09vKzy8HPC14oVJfuPUD/sh9X57cFDAIr5VWvAtTjwX6XOx3TMnwN9FCg2fk6\n
        aI54/+jH4l9po2QzFDK9MfOrfDUCgYEA9K/AnWQ5QJmNTfCjFcV8kHjJgCoS42BP\n
        iTKyTniDASSxGUNMxt0Hqu1m9jDwduHhi4X+KibVTaMexdkta6KPNgpFYSCWgwcj\n
        SwVv0xxoqiYGv1n5TTpcPM+4tVgSSdNiQsj2x3CaQXRH4W9rd3FBqI/bSb6kXgEV\n
        uu2fl7DNdBMCgYEAh9quvotfKmP6gUrkt0aMt1L3rDIqQmAYr/LrPxbBhJTRBZgh\n
        Cec4RuPxxXb3pblMgMMjkz9wZaHT7M2QEhYSEnpTQ+HJwlV5Yi5H2Q/nfg72LDYn\n
        EtjMW0M7oQv3BUIo3uF/iiGmMIKyMWMalRdO5NVGSOJDZakE1T+o8EbhWJUCgYEA\n
        lOMUqzC+/aXxq4lPUwIWJ7q3sbroP17tRqiIguMlo951vM+MujzoW4OVcRyaVVxg\n
        54si+vciN9mX8f+SeboytklNqiowK45+VTn7r1PMBCybUngnEG0Ajyg+Vmo+xplP\n
        Yx/xua20zzs4Od6YX9eUgkL2xkqwrVqvpEzPHXhBq+0CgYBHTUVg6HTCS7/70ckk\n
        Za3OGmtn7OSlUIr5+RlMuYKZJ9qPEevkasyZ7lVKd8wzXOcYWRVCS39WbFQSp5r/\n
        g+uewXlkn5alw2g3zbctmqqkGuIOn3HwC/uNsJ4sWWYhDvSXt4no8S1uAisBANIK\n
        mTCpQEzuFWBAp/LmHDEZJ9Np8g==\n
        -----END PRIVATE KEY-----\n
        """
      "audapi_oauthPublicKey" => """
        -----BEGIN PUBLIC KEY-----\n
        MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6vkAwit13vyDItEoK3ix\n
        vz0p7egCuS9Qzb46VponOBIzDHAHo+0gfSeYMVFEAKDwpREWwMK6ZW+2ZRatrnXy\n
        Eeh11ZBimKuroiynjSoCk+HBUo6EO9yZ3zxyUMEBu2h7y8s/Ac+rtrvXyWJQUbtq\n
        BYQxJontJIAG12A/W8t42E7/4Uqe4Ew0/E3R5zHOBiqnH5OaoZyZ/vriskMzUi7G\n
        bKvOmwDVH7vMuhxDFfKsIxqc2fF905W5nAsbrzTdxA4lOBhj3bLskGzF7yCNhUhO\n
        Dn0sAD6ergSbkw4Ug+qVMlegcpO8eoiorNuSp3RwXEalUmOxtVMN1c0RYOEYsHM7\n
        7wIDAQAB\n
        -----END PUBLIC KEY-----\n
        """
      "audapp_appConfig" => array:4 [ …4]
      "audapp_appConfigFailures" => "0"
      "audapp_appConfigKey" => "d3ZYUjJEUEFxdERyOWlWbQ=="
      "audapp_appId" => "com.snipershide.app"
      "audapp_appleBid" => "com.snipershide.app.ios"
      "audapp_appleEnvironment" => "default"
      "audapp_appleSharedSecret" => "f0673ec43fea4ce69a9cab6b362d3738"
      "audapp_darkStyleId" => "22"
      "audapp_enableAppInstallBanner" => "1"
      "audapp_enableExtraNodeData" => "1"
      "audapp_enableInlineAds" => "1"
      "audapp_enableInterstitialAds" => "1"
      "audapp_enablePushLog" => "0"
      "audapp_featureToggles" => array:11 [ …11]
      "audapp_googleClientEmail" => "[email protected]"
      "audapp_googlePackageName" => "com.snipershide.app.android"
      "audapp_googlePrivateKey" => "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDKiUrl041Friaa\ntk2gqSKe1I99PDAL4BZmbU5LMXqgP4Ks2ErDj2Aa5PuR3GXYVGa9A3Q8rEe133ch\nE7PK+v4K0tSzWdmIREdyS7RNGVDH5NJNhPehE1iwr4WzmKXN69KtTqtSwBIv2hG5\n8mF0FWdUvZm/Z/dCzUGyXxD1fmMhstya425FypW0ETrPN+70oAB0CSzN5refTkeq\nPWRzekMCWb4F/tc7g2T5YOxR7tjC/hVU1T3dReEozga8cO12gG+zw2zEwKtVLZXC\n/POdm3c3G99tYMUz73MW7+BxwtaeVz8v+v7CjjIZxY0qOQmPukC222EtfwyHYc9O\n/+YXxeSDAgMBAAECggEABIP+xf9V+Srn/xoNGAW9WQeJ3XPFPyEzY/w65c/yw8uM\nCSOCDeMj9DriZamhdwBxZp8YQoQKzezEtgQ/mskcIeH6eQyJ85D7e3phnjhwGyIo\naC8MlaxIlW6MZL6Er9clVCowBVZ1Rq4uJ/8Amjsh7yXnss30GYAEX3WMJhUNIRgB\ncQt81X3EGLCXObUuPwx+Rr4+x9qUz/mAPLH/rAKh9kSIKNrDzOtRetemOPz5i+n5\nLiVYkay+YdjXucxxV2X2/U3+BCXix7inD+gJAivMak3ZoH76V8hOlBevmO7ElRbN\n1vKe9VKJcm4Z5PY+zFQ8dPu2uymwmMIaY7hi9Opi7QKBgQD1/1Otj8SSkAjrHwBX\nlpSB+zWlMiwcO3U3ZMBn2JMk6yP3xwxHXw9jqRtZ4G/w1N+1CYxkeZqv51+It9nd\nASovCOwKvfcHluMlSyBM+uvatjV736H6b171uQsYKJXD4GiyUftLa9mJXveIjExw\n4WMHaTA9J1Gf1JqfV/Nh7h69VwKBgQDSxZBqmkt29RMZ4Ms8koFZK7vBpDEpJfJQ\nY+6g+P3XHzZIllQQbXELXAvNX/hYKrS948O3Tw6NKZ+Bygr+nZRwoCg9tLF5acRy\nh/anebF3DPUATJwozlH++c6HD3/pgb2QgJf3y1y3+mUSxJ6V881vdf5agSd7C3ut\nrK97YPxqtQKBgErnAqCfXPhPeRe2adFBnVhymCQDweCazhcey2MTU8JzApGofvmg\nXTw4OobESvFmr/McxC23xTz4U2N6r5CWkTSfH9gpfXVHIUSyulQWNwhyYJimQFjT\n3nMtc85YVTm+M8LQKZcOcL9eNjrSlVftmMyh37lPJpBnGOmZyxavfZajAoGBAJke\n0/LOEwLhujWznJJtsLCSV/2uhdRp7+a9IrApE2hEEZCcPYgNqfFhtmVGUknjBJlr\nLVUvhtfApFOK73/YBO3pPDLP4Zrd3syBwAwdGXLuo9LK1SvD78e3vXVbKkb+bTPc\naAqp37r8mo8O7lLr4pQV+WnQqFj4l6otaPLOG7J9AoGBAPXS2CgmfBzeBo8dt0i3\npqQc4h01hLIDcag691WVnhtFXu6f8ks+v40yw8th6CCpwGLIl/2R2Lf75HB/BiwE\niFapsvKJlDG7YE4nf+xyeOZSQKdm/N0NAHjGP6Jnh69RTZD1T/oy0ttvR9JwhihZ\nSrUfD9J1NACHWIyn0VfLwuXB\n-----END PRIVATE KEY-----\n"
      "audapp_googleProjectId" => "pc-api-8550534343379152468-165"
      "audapp_iOSAppStoreId" => ""
      "audapp_isSetup" => "1"
      "audapp_killApp" => "0"
      "audapp_killPushNotifications" => "0"
      "audapp_lightStyleId" => "21"
      "audapp_logPushApiErrors" => "0"
      "audapp_newPostDisplayMode" => "thread"
      "audapp_pageDisplayTypes" => array:5 [ …5]
      "audav_earn_alerts" => "first"
      "audav_level_alerts" => "1"
      "audav_showEarnOnModal" => "0"
      "audentioapi_oauthAccessTokenTTL" => "2592000"
      "audentioapi_oauthRefreshTokenTTL" => "5184000"
      "audentiocommunity_lastReportEval" => "0"
      "audentiocommunity_reportScore" => "0"
      "audentioleaderboards_pageSize" => "25"
      "audfeeds_ajaxTabs" => "1"
      "audfeeds_ajaxUpdate" => "1"
      "audfeeds_ajaxUpdateRate" => "5"
      "audfeeds_availablePrefixFilters" => []
      "audfeeds_availableTTFilters" => []
      "audfeeds_cachePageCount" => "1"
      "audfeeds_cacheTime" => "5"
      "audfeeds_cacheTimeLong" => "24"
      "audfeeds_createButton" => array:7 [ …7]
      "audfeeds_curatedLimit" => "100"
      "audfeeds_curatedMaxDays" => "30"
      "audfeeds_decay" => "exp"
      "audfeeds_dropdownSelect" => "1"
      "audfeeds_enableCustomOrder" => "0"
      "audfeeds_enableNodeFilter" => "1"
      "audfeeds_enablePage" => "1"
      "audfeeds_entriesPerPage" => "25"
      "audfeeds_excludeNodeIds" => []
      "audfeeds_filterAutoSave" => "0"
      "audfeeds_filterWidgetPosition" => "sidenav"
      "audfeeds_hideGuestMedia" => "1"
      "audfeeds_holdPromotionX" => "60"
      "audfeeds_maxPages" => "1000"
      "audfeeds_newsFeedReactions" => "0"
      "audfeeds_promoteEverySocialX" => "60"
      "audfeeds_promoteEveryX" => "60"
      "audfeeds_redirectWhatsNew" => "0"
      "audfeeds_unlimitedScroll" => "1"
      "audfeeds_unreadIndicators" => "1"
      "audfeeds_weightComment" => "1000"
      "audfeeds_weightPost" => "1000"
      "audfeeds_weightRating" => "1000"
      "audfeeds_weightReaction" => "100"
      "audfeeds_weightReactionSocial" => "100"
      "audfeeds_weightView" => "1"
      "audlive_logApiErrors" => "0"
      "autoEmbedMedia" => array:2 [ …2]
      "boardActive" => "1"
      "boardDescription" => "Sniper's Hide Forum"
      "boardInactiveMessage" => "Sniper's Hide is currently undergoing an upgrade. Check back in a few hours!"
      "boardShortTitle" => ""
      "boardTitle" => "Sniper's Hide Forum"
      "boardUrl" => "https://www.snipershide.com/shooting"
      "boardUrlCanonical" => "0"
      "bounceEmailAddress" => ""
      "captcha" => "ReCaptcha"
      "categoryOwnPage" => "0"
      "censorCharacter" => "*"
      "censorWords" => []
      "changeLogLength" => "60"
      "collectServerStats" => array:4 [ …4]
      "contactEmailAddress" => "[email protected]"
      "contactEmailSenderHeader" => "0"
      "contactUrl" => array:3 [ …3]
      "conversationPopupExpiryHours" => "72"
      "convertMarkdownToBbCode" => "0"
      "cookieConsent" => array:1 [ …1]
      "cookieConsentLogLength" => "90"
      "currentVersionId" => "2021672"
      "defaultEmailAddress" => "[email protected]"
      "defaultEmailStyleId" => "15"
      "defaultLanguageId" => "1"
      "defaultStyleId" => "27"
      "disallowedCustomTitles" => """
        admin\n
        moderator
        """
      "discourageBlankChance" => "10"
      "discourageDelay" => array:2 [ …2]
      "discourageFloodMultiplier" => "10"
      "discourageRedirectChance" => "15"
      "discourageRedirectUrl" => ""
      "discourageSearchChance" => "40"
      "discussionPreview" => "1"
      "discussionRssContentLength" => "500"
      "discussionsPerPage" => "20"
      "displayVisitorCount" => "title_and_icon"
      "dynamicAvatarEnable" => "1"
      "editHistory" => array:2 [ …2]
      "editLogDisplay" => array:2 [ …2]
      "editorDropdownConfig" => array:1 [ …1]
      "editorToolbarConfig" => array:4 [ …4]
      "emailBounceHandler" => array:7 [ …7]
      "emailConversationIncludeMessage" => "1"
      "emailDkim" => array:5 [ …5]
      "emailFileCheckWarning" => array:2 [ …2]
      "emailSenderName" => ""
      "emailShare" => "1"
      "emailSoftBounceThreshold" => array:3 [ …3]
      "emailTransport" => array:7 [ …7]
      "emailUnsubscribeHandler" => array:7 [ …7]
      "emailWatchedThreadIncludeMessage" => "1"
      "emojiSource" => array:2 [ …2]
      "emojiStyle" => "emojione"
      "enableMemberList" => "0"
      "enableNewsFeed" => "1"
      "enableNotices" => "1"
      "enablePush" => "1"
      "enableSearch" => "1"
      "enableTagging" => "1"
      "enableTrophies" => "0"
      "enableVerp" => "1"
      "extraCaptchaKeys" => array:2 [ …2]
      "facebookLike" => "1"
      "floodCheckLength" => "30"
      "floodCheckLengthDiscussion" => "180"
      "forumsDefaultPage" => "forums"
      "geoLocationUrl" => "https://maps.google.com/maps?q={location}"
      "giphy" => array:3 [ …3]
      "googleAnalyticsAnonymize" => "1"
      "googleAnalyticsWebPropertyId" => "UA-91918309-1"
      "gravatarEnable" => "0"
      "guestShowSignatures" => "0"
      "guestTimeZone" => "America/New_York"
      "homePageUrl" => "https://thehide.tv/"
      "imageCacheRefresh" => "0"
      "imageCacheTTL" => "7"
      "imageLibrary" => "gd"
      "imageLinkProxy" => array:2 [ …2]
      "imageLinkProxyKey" => ""
      "imageLinkProxyLogLength" => "90"
      "imageLinkProxyReferrer" => array:2 [ …2]
      "imageProxyBypass" => array:2 [ …2]
      "imageProxyMaxSize" => "51200"
      "import_vb_table" => "xf_import_vbulletin5_log"
      "includeCaptchaPrivacyPolicy" => "1"
      "includeTitleInUrls" => "1"
      "indexRoute" => "forums/"
      "ipInfoUrl" => "http://whatismyipaddress.com/ip/{ip}"
      "ipLogCleanUp" => array:2 [ …2]
      "jQuerySource" => "local"
      "jobRunTrigger" => "server"
      "jsLastUpdate" => "1725390632"
      "lastPageLinks" => "3"
      "lightBoxUniversal" => "0"
      "linkShare" => "1"
      "loginLimit" => "block"
      "logoLink" => "0"
      "lostPasswordCaptcha" => "1"
      "lostPasswordTimeLimit" => "180"
      "maxContentSpamMessages" => "2"
      "maxContentTags" => "10"
      "maxContentTagsPerUser" => "10"
      "maximumSearchResults" => "200"
      "membersPerPage" => "20"
      "messageMaxImages" => "25"
      "messageMaxLength" => "1000000"
      "messageMaxMedia" => "20"
      "messagesPerPage" => "50"
      "moderatorLogLength" => "0"
      "multiQuote" => "1"
      "newsFeedMaxItems" => "15"
      "newsFeedMessageSnippetLength" => "140"
      "nfCalendarAgendaViews" => "1"
      "nfCalendarBoundaryFilterDistance" => array:2 [ …2]
      "nfCalendarDefaultListView" => "listMonth"
      "nfCalendarDefaultView" => "agendaWeek"
      "nfCalendarEventCalLimit" => "5"
      "nfCalendarEventFromLimit" => "5"
      "nfCalendarEventUnreadCounter" => "0"
      "nfCalendarEventsPerPage" => "20"
      "nfCalendarGoogleApi" => ""
      "nfCalendarIncludeBirthdays" => array:2 [ …2]
      "nfCalendarIncludeWeekends" => "1"
      "nfCalendarIndexBirthdays" => "1"
      "nfCalendarIndexFutureBirthdays" => "1"
      "nfCalendarLayoutType" => "calendar"
      "nfCalendarLocationComplete" => "1"
      "nfCalendarMaxMessageLength" => "10000"
      "nfCalendarMinMessageLength" => "0"
      "nfCalendarNLP" => "0"
      "nfCalendarPrefillDateTime" => "1"
      "nfCalendarSelectable" => "0"
      "nfCalendarWeekStart" => "1"
      "oEmbedCacheRefresh" => "0"
      "oEmbedCacheTTL" => "7"
      "oEmbedLogLength" => "90"
      "oEmbedRequestReferrer" => array:2 [ …2]
      "onlineStatusTimeout" => "15"
      "pinterestShare" => "0"
      "pollMaximumResponses" => "10"
      "preRegAction" => array:3 [ …3]
      "preventDiscouragedRegistration" => "1"
      "privacyPolicyForceWhitelist" => ""
      "privacyPolicyLastUpdate" => "0"
      "privacyPolicyUrl" => array:2 [ …2]
      "profilePostMaxLength" => "500"
      "pushKeysVAPID" => array:2 [ …2]
      "readMarkingDataLifetime" => "30"
      "realms_createAchievements" => "1"
      "realms_logApiErrors" => "0"
      "realms_overrideLoginRegister" => "1"
      "realms_primaryRealmId" => "1"
      "realms_syncAchievements" => "0"
      "realms_syncQuizzes" => "0"
      "redditShare" => "0"
      "registrationCheckDnsBl" => array:3 [ …3]
      "registrationDefaults" => array:16 [ …16]
      "registrationSetup" => array:7 [ …7]
      "registrationTimer" => "15"
      "registrationWelcome" => array:13 [ …13]
      "reportIntoForumId" => "0"
      "romanizeUrls" => "0"
      "rootBreadcrumb" => "forums"
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_CA" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_DE" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_ES" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_FR" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_IN" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_IT" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_JP" => ""
      "s9e_MediaSites_AMAZON_ASSOCIATE_TAG_UK" => ""
      "s9e_MediaSites_ClickToLoad" => "0"
      "s9e_MediaSites_ClickToLoad_Oembed" => "0"
      "s9e_MediaSites_FindInPage" => "1"
      "s9e_MediaSites_Footer" => "show"
      "s9e_MediaSites_Full_Width_Embeds" => "0"
      "s9e_MediaSites_Markup" => "media"
      "s9e_MediaSites_MastodonHosts" => "mastodon.social"
      "s9e_MediaSites_Miniplayer" => "1"
      "s9e_MediaSites_Native_GIFs" => "0"
      "s9e_MediaSites_Native_Paused" => "0"
      "s9e_MediaSites_Scraping_Client" => "auto"
      "s9e_MediaSites_Url_Suffix" => array:2 [ …2]
      "s9e_MediaSites_XenForoHosts" => ""
      "s9e_MediaSites_YouTube_Privacy" => "0"
      "saveDrafts" => array:3 [ …3]
      "searchMinWordLength" => "3"
      "searchResultsPerPage" => "20"
      "selectQuotable" => "1"
      "sendUnsubscribeConfirmation" => "1"
      "sharedIpsCheckLimit" => "28"
      "shortcodeToEmoji" => "1"
      "showEmojiInSmilieMenu" => "1"
      "showMessageOnlineStatus" => "1"
      "sitemapAutoRebuild" => "1"
      "sitemapAutoSubmit" => array:2 [ …2]
      "sitemapExclude" => []
      "sitemapExtraUrls" => ""
      "spamDefaultOptions" => array:5 [ …5]
      "spamMessageAction" => "delete"
      "spamPhrases" => array:2 [ …2]
      "spamThreadAction" => array:2 [ …2]
      "spamUserCriteria" => array:3 [ …3]
      "stopForumSpam" => array:8 [ …8]
      "svLogLessFunc" => "0"
      "tagCloud" => array:2 [ …2]
      "tagCloudMinUses" => "1"
      "tagLength" => array:2 [ …2]
      "tagValidation" => array:2 [ …2]
      "templateHistoryLength" => "30"
      "termsLastUpdate" => "0"
      "thDonate_animateBars" => "1"
      "thDonate_user_notification" => []
      "th_apiKey_uix" => "6dde658f525a5215b6f56b5cc14a033ab82b6f3285cfdaad0e9c60bd33372d54"
      "th_deviantArtUrl_uix" => ""
      "th_discordUrl_uix" => ""
      "th_enableFtp_uix" => "0"
      "th_facebookUrl_uix" => "https://www.facebook.com/snipershidellc/"
      "th_gitHubUrl_uix" => ""
      "th_googlePlus_uix" => ""
      "th_imageoptimizer_disabledContentTypes" => []
      "th_imageoptimizer_secretKey" => "NCaJ2rEKhiP3EJAf"
      "th_instagramUrl_uix" => "https://www.instagram.com/shlowlight"
      "th_linkedInUrl_uix" => ""
      "th_materialAvatars_uix" => "0"
      "th_newDirectoryPermissions_uix" => "0755"
      "th_optimizeOnUpload_imageOptimizer" => "1"
      "th_pinterestUrl_uix" => ""
      "th_postbitCollapseDefault_uix" => "all"
      "th_preferredCurrency_donate" => "USD"
      "th_reactplus_reactionPicker" => "default"
      "th_redditUrl_uix" => ""
      "th_sidebarCollapseDefault_uix" => ""
      "th_sidebarCollapseTime_uix" => "0"
      "th_sidebarNavCollapseDefault_uix" => ""
      "th_steamUrl_uix" => ""
      "th_tumblrUrl_uix" => ""
      "th_twitchUrl_uix" => ""
      "th_twitterUrl_uix" => "https://twitter.com/SH_Lowlight"
      "th_updateCheck_uix" => "1"
      "th_youtubeUrl_uix" => "https://www.youtube.com/channel/UCwHsnyWOaQNtrGjJKsTgegg"
      "thageprompt_age" => "18"
      "thcli_cron_log" => "0"
      "thconnectedaccountproviders_autoCreateAccounts" => "0"
      "thconnectedaccountproviders_bypass" => array:1 [ …1]
      "thconnectedaccountproviders_enableConAccSect" => "1"
      "thconnectedaccountproviders_forceOauthLogin" => "0"
      "thconnectedaccountproviders_forceOauthRegistration" => "0"
      "thconnectedaccountproviders_linkProfileFields" => []
      "thconnectedaccountproviders_mapToCustom" => array:2 [ …2]
      "thconnectedaccountproviders_redirectAfterLogout" => ""
      "thconnectedaccountproviders_redirectSingleProvider" => "1"
      "thconnectedaccountproviders_updateEmail" => "0"
      "thconnectedaccountproviders_updateUsername" => "0"
      "thcovers_allowContentOwnersToEdit" => "0"
      "thcovers_coverMaxFileSize" => "8192"
      "thcovers_ogImages" => "0"
      "thdonate_profile_tab" => "1"
      "thdonate_require_captcha" => "0"
      "thfeature_applyPrefixToFeaturedResources" => "0"
      "thfeature_applyPrefixToFeaturedThreads" => "0"
      "thfeature_cropToSlider" => "1"
      "thfeature_defaultFeatureLength" => array:3 [ …3]
      "thfeature_defaultSort" => "feature_date"
      "thfeature_enableFeaturePage" => "1"
      "thfeature_enableMemberProfileTab" => "1"
      "thfeature_featurePageGrid" => "1"
      "thfeature_featurePageGridLimit" => "5"
      "thfeature_featurePageSlider" => "1"
      "thfeature_featurePageSliderAutoplaySpeed" => "5000"
      "thfeature_featurePageSliderLimit" => "5"
      "thfeature_featuredContentPerPage" => "20"
      "thfeature_maxMessageLength" => "256"
      "thfeature_overrideResourcePrefixOnFeature" => "0"
      "thfeature_overrideThreadPrefixOnFeature" => "0"
      "thfeature_separateFirstPost" => "0"
      "thfeature_separateFirstPostAllPages" => "0"
      "thfeature_sliderDimensions" => array:2 [ …2]
      "thfeature_trimExcerpt" => "0"
      "thfilters_discussionsPerPage" => "25"
      "thfilters_filterPrefixes" => []
      "thfilters_filterThreads" => "0"
      "thfilters_filterTogglePosition" => "page_action"
      "thfilters_filtersOnAllPage" => array:2 [ …2]
      "thfilters_invertNodeColor" => "1"
      "thfilters_randomNodeColor" => "1"
      "thfilters_trendingConfiguration" => "auto"
      "thforumlistwatchedforums_limit" => "6"
      "thimageoptimizer_logInformationalErrors" => "1"
      "thmonetize_alertLogLength" => "0"
      "thmonetize_allowFreeUpgrade" => "1"
      "thmonetize_allowGuestsToViewUserUpgrades" => "1"
      "thmonetize_defaultTimePeriodFilter" => "monthly"
      "thmonetize_emailLogLength" => "0"
      "thmonetize_enableSponsorsDirectory" => "0"
      "thmonetize_excludeSuggestUpgradeContent" => []
      "thmonetize_excludeSuggestUpgradeGlobal" => []
      "thmonetize_force_show_coupon_form" => "0"
      "thmonetize_keywordsExcludedContentTypes" => array:1 [ …1]
      "thmonetize_keywordsExcludedNodes" => []
      "thmonetize_keywordsExcludedUsergroups" => []
      "thmonetize_keywordsLimitPerPage" => "0"
      "thmonetize_keywordsLimitPerWord" => "0"
      "thmonetize_linkToUpgradesIfContentRestricted" => "1"
      "thmonetize_maxAlertsPerUser" => array:2 [ …2]
      "thmonetize_maxEmailsPerUser" => array:2 [ …2]
      "thmonetize_maxMessagesPerUser" => array:2 [ …2]
      "thmonetize_maxTotalAlertsPerUser" => array:2 [ …2]
      "thmonetize_maxTotalEmailsPerUser" => array:2 [ …2]
      "thmonetize_maxTotalMessagesPerUser" => array:2 [ …2]
      "thmonetize_messageActiveCutoff" => "7"
      "thmonetize_messageActiveOnly" => "1"
      "thmonetize_messageLogLength" => "0"
      "thmonetize_requireUserUpgradeOnRegistration" => "0"
      "thmonetize_sendUpgradeReceipt" => "1"
      "thmonetize_showTimePeriodFilters" => "1"
      "thmonetize_suggestUpgradeOnNoPermissionError" => "0"
      "thmonetize_suggestUpgradeOnNoPermissionErrorGuests" => "0"
      "thmonetize_suggestUpgradeOnNoPermissionErrorRoutes" => "lessons/*"
      "thnodes_customColors" => "0"
      "thnodes_openPostThreadInOverlay" => "1"
      "thprivacyoptioncontrol_available_values" => array:2 [ …2]
      "thprivacyoptioncontrol_restricted_options" => array:1 [ …1]
      "threadloom_access_key" => "XLRFJJJR"
      "threadloom_account" => "forumsnipershide"
      "threadloom_colorNote" => ""
      "threadloom_defaultSearchType" => "threadloom"
      "threadloom_dev_options" => array:1 [ …1]
      "threadloom_disable_rt" => "0"
      "threadloom_search" => "0"
      "threadloom_showEngineOptionsSearchDropdown" => "0"
      "threadloom_showMakeDefaultSearchResultsCta" => "0"
      "threadloom_showThreadloomResults" => "1"
      "threadloom_showXenForoResults" => "1"
      "threadloom_status" => ""
      "thtrending_posChanges" => "1"
      "thuix_enableStyleOptions" => "0"
      "thuix_userStyleChangeStorage" => "session"
      "thusercriteria_prefix" => "th_"
      "thxlink_cache_time" => "5"
      "thxlink_last_widget_sync" => "1724250795"
      "tosForceWhitelist" => ""
      "tosUrl" => array:2 [ …2]
      "tumblrShare" => "0"
      "tweet" => array:3 [ …3]
      "unsubscribeEmailAddress" => ""
      "unsubscribeEmailHandling" => array:2 [ …2]
      "upgradeCheckStableOnly" => "1"
      "urlToPageTitle" => array:2 [ …2]
      "urlToRichPreview" => "1"
      "useFriendlyUrls" => "1"
      "userBanners" => array:4 [ …4]
      "userMentionKeepAt" => "1"
      "userTitleLadderField" => "message_count"
      "usernameChangeRecentLimit" => "30"
      "usernameChangeRequireReason" => "0"
      "usernameChangeTimeLimit" => "60"
      "usernameLength" => array:2 [ …2]
      "usernameReuseTimeLimit" => "0"
      "usernameValidation" => array:2 [ …2]
      "watchAlertActiveOnly" => array:2 [ …2]
      "webShare" => "1"
      "whatsAppShare" => "1"
      "xc_feedback_admin_notify_email" => array:1 [ …1]
      "xc_feedback_admin_notify_notification" => array:1 [ …1]
      "xc_feedback_admin_notify_pm" => array:1 [ …1]
      "xc_feedback_default_notify_email" => array:1 [ …1]
      "xc_feedback_default_notify_pm" => array:1 [ …1]
      "xc_feedback_notify_notification" => []
      "xcfs_admin_username" => []
      "xcfs_ajax_redirect" => "0"
      "xcfs_ajax_reload_interval" => "0"
      "xcfs_allow_thread_starter" => "0"
      "xcfs_alternate_url" => "0"
      "xcfs_branding" => "1"
      "xcfs_can_give_feedback" => "0"
      "xcfs_check_thread_starter" => "0"
      "xcfs_comment_minlength" => "10"
      "xcfs_disable_thread_live_check" => "0"
      "xcfs_dump_id_on_error" => "0"
      "xcfs_duplicate_time_limit" => "10"
      "xcfs_edit_time_limit" => "5"
      "xcfs_enable_activity" => "1"
      "xcfs_enable_guest_activity" => "0"
      "xcfs_feedback_limit" => array:2 [ …2]
      "xcfs_force_valid_deal_url" => "0"
      "xcfs_homepage" => array:3 [ …3]
      "xcfs_import_mode" => "0"
      "xcfs_mainpage_limit" => "10"
      "xcfs_make_mutual_if_time" => "0"
      "xcfs_member_tab" => "last"
      "xcfs_mutual_feedback" => "0"
      "xcfs_notable_members" => "1"
      "xcfs_notify_from_admin" => ""
      "xcfs_perpage" => "20"
      "xcfs_perpagefiltered" => "50"
      "xcfs_postbit_valid_forums" => []
      "xcfs_rate_from_postbit" => "allow"
      "xcfs_rating_style" => "0"
      "xcfs_require_comment" => "0"
      "xcfs_require_feedback_reply" => "0"
      "xcfs_show_alternative_postbit_stats" => "0"
      "xcfs_show_comment" => "1"
      "xcfs_show_detailed_postbit_stats" => "1"
      "xcfs_show_in_conversations" => "1"
      "xcfs_show_in_navbar" => "1"
      "xcfs_show_in_postbit" => "below"
      "xcfs_show_in_visitor_panel" => "1"
      "xcfs_show_link_in_member_card" => "1"
      "xcfs_show_tabbed" => "1"
      "xcfs_sidebar_blocks" => array:3 [ …3]
      "xcfs_thread_valid_forums" => []
      "xcfs_unique_deal_url" => "0"
      "xcfs_use_overlay" => "1"
      "xcfs_valid_media" => []
      "xcfs_valid_resources" => []
      "xfesConfig" => array:9 [ …9]
      "xfesEnabled" => "1"
      "xfesRecencyRelevance" => array:2 [ …2]
      "xfesSimilarThreads" => array:4 [ …4]
      "xfesSimilarThreadsExcludedForums" => []
      "xfmgAlbumsPerPage" => "12"
      "xfmgAllowPersonalAlbums" => "1"
      "xfmgAudioExtensions" => """
        wav\n
        mp3\n
        flac
        """
      "xfmgCommentsPerPage" => "10"
      "xfmgDefaultViewPrivacy" => "public"
      "xfmgFfmpeg" => array:8 [ …8]
      "xfmgImageExtensions" => """
        png\n
        jpg\n
        jpeg\n
        jpe\n
        gif
        """
      "xfmgLightboxNavigation" => "1"
      "xfmgMaxDescriptionLength" => "300"
      "xfmgMaxTitleLength" => "150"
      "xfmgMediaIndexLimit" => "0"
      "xfmgMediaPerPage" => "24"
      "xfmgMinTagsPersonalAlbums" => "0"
      "xfmgOverrideStyle" => "0"
      "xfmgRequireComment" => "0"
      "xfmgThumbnailDimensions" => array:2 [ …2]
      "xfmgUnviewedCounter" => "0"
      "xfmgVideoExtensions" => """
        avi\n
        m4v\n
        mov\n
        mp4\n
        ogg\n
        webm\n
        wmv
        """
      "xfmgWatermarking" => array:2 [ …2]
      "xfrmAllowAnonReview" => "0"
      "xfrmAllowIcons" => "1"
      "xfrmAuthorOtherResourcesCount" => "5"
      "xfrmEnableTeams" => "0"
      "xfrmFilelessViewFull" => array:2 [ …2]
      "xfrmListDefaultOrder" => "last_update"
      "xfrmMinimumReviewLength" => "0"
      "xfrmPaidResourceThreadTitleTemplate" => "{title} [Paid]"
      "xfrmRecentReviewsCount" => "10"
      "xfrmRecentUpdatesCount" => "3"
      "xfrmRequireDownloadToRate" => "1"
      "xfrmResourceCurrencies" => """
        usd\n
        cad\n
        aud\n
        gbp\n
        eur
        """
      "xfrmResourceDeleteThreadAction" => array:4 [ …4]
      "xfrmResourceExtensions" => """
        zip\n
        txt\n
        pdf\n
        png\n
        jpg\n
        jpeg\n
        jpe\n
        gif\n
        psd\n
        tif
        """
      "xfrmResourceMaxFileSize" => "2048"
      "xfrmResourceMaxFiles" => "5"
      "xfrmResourcesPerPage" => "20"
      "xfrmReviewRequired" => "1"
      "xfrmReviewVoting" => "yes"
      "xfrmReviewsPerPage" => "20"
      "xfrmUpdateMaxLength" => "50000"
      "xfrmUpdatesPerPage" => "10"
    ]
    flag::STD_PROP_LIST: false
    flag::ARRAY_AS_PROPS: true
    iteratorClass: "ArrayIterator"
  }
  "reactions" => array:6 [
    1 => array:16 [
      "reaction_id" => 1
      "text_color" => "@xf-linkColor"
      "reaction_score" => 1
      "display_order" => 100
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    2 => array:16 [
      "reaction_id" => 2
      "text_color" => "#E81C27"
      "reaction_score" => 1
      "display_order" => 200
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    3 => array:16 [
      "reaction_id" => 3
      "text_color" => "#FDCA47"
      "reaction_score" => 1
      "display_order" => 300
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    4 => array:16 [
      "reaction_id" => 4
      "text_color" => "#FDCA47"
      "reaction_score" => 0
      "display_order" => 400
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    5 => array:16 [
      "reaction_id" => 5
      "text_color" => "#FDCA47"
      "reaction_score" => 0
      "display_order" => 500
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    6 => array:16 [
      "reaction_id" => 6
      "text_color" => "#FF4D4D"
      "reaction_score" => 0
      "display_order" => 600
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
  ]
  "reactionsActive" => array:6 [
    1 => array:16 [
      "reaction_id" => 1
      "text_color" => "@xf-linkColor"
      "reaction_score" => 1
      "display_order" => 100
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    2 => array:16 [
      "reaction_id" => 2
      "text_color" => "#E81C27"
      "reaction_score" => 1
      "display_order" => 200
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    3 => array:16 [
      "reaction_id" => 3
      "text_color" => "#FDCA47"
      "reaction_score" => 1
      "display_order" => 300
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    4 => array:16 [
      "reaction_id" => 4
      "text_color" => "#FDCA47"
      "reaction_score" => 0
      "display_order" => 400
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    5 => array:16 [
      "reaction_id" => 5
      "text_color" => "#FDCA47"
      "reaction_score" => 0
      "display_order" => 500
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
    6 => array:16 [
      "reaction_id" => 6
      "text_color" => "#FF4D4D"
      "reaction_score" => 0
      "display_order" => 600
      "active" => true
      "image_url" => "styles/default/xenforo/reactions/emojione/sprite_sheet_emojione.png"
      "image_url_2x" => ""
      "sprite_params" => array:5 [ …5]
      "th_reactplus_reaction_category_id" => 0
      "th_reactplus_display_type" => "image"
      "th_reactplus_display_value" => null
      "th_reactplus_content_criteria" => []
      "th_reactplus_user_criteria" => []
      "th_reactplus_has_verb" => false
      "th_reactplus_import_type" => null
      "th_reactplus_import_id" => null
    ]
  ]
  "addOns" => array:37 [
    "Audentio/API" => 1000270
    "Audentio/Achievements" => 1001494
    "Audentio/App" => 1011670
    "Audentio/Community" => 1000392
    "Audentio/CompleteAccount" => 1000394
    "Audentio/Emoji" => 1000091
    "Audentio/Feeds" => 1030370
    "Audentio/Leaderboards" => 1001070
    "Audentio/Streaming" => 1010170
    "Audentio/UsergroupMarking" => 1000091
    "NF/Calendar" => 2030172
    "Realms/XFIntegration" => 1010391
    "SV/StandardLib" => 2001200100
    "ThemeHouse/AgePrompt" => 1000170
    "ThemeHouse/ConnectedAccountProviders" => 1020493
    "ThemeHouse/Covers" => 901010195
    "ThemeHouse/Donate" => 901010892
    "ThemeHouse/Feature" => 1001292
    "ThemeHouse/Filters" => 1000594
    "ThemeHouse/ForumListWatchedForums" => 1000091
    "ThemeHouse/Monetize" => 1010992
    "ThemeHouse/Nodes" => 1010191
    "ThemeHouse/PrivacyOptionControl" => 1000070
    "ThemeHouse/ReactPlus" => 1020070
    "ThemeHouse/Trending" => 1000594
    "ThemeHouse/UIX" => 2020093
    "ThemeHouse/UIXPro" => 1000370
    "ThemeHouse/UserCriteria" => 1000793
    "ThemeHouse/XLink" => 1000992
    "ThemeHouse/XPress" => 1010594
    "XF" => 2021672
    "XF301VB" => 1010970
    "XFES" => 2020270
    "XFMG" => 902020670
    "XFRM" => 2020570
    "XenCentral/Feedback" => 2030052700
    "s9e/MediaSites" => 2160070
  ]
  "runJobs" => false
  "simpleCache" => SimpleCache {#319
    #data: array:3 [ …3]
  }
  "livePayments" => true
  "fullJs" => false
  "contactUrl" => "/shooting/misc/contact"
  "privacyPolicyUrl" => "/shooting/help/privacy-policy/"
  "tosUrl" => "/shooting/help/terms/"
  "homePageUrl" => "https://thehide.tv/"
  "helpPageCount" => 7
  "uploadMaxFilesize" => 10485760
  "allowedVideoExtensions" => array:8 [
    0 => "m4v"
    1 => "mov"
    2 => "mp4"
    3 => "mp4v"
    4 => "mpeg"
    5 => "mpg"
    6 => "ogv"
    7 => "webm"
  ]
  "allowedAudioExtensions" => array:4 [
    0 => "mp3"
    1 => "opus"
    2 => "ogg"
    3 => "wav"
  ]
  "reply" => array:7 [
    "controller" => "XF:Thread"
    "action" => "Index"
    "section" => "forums"
    "containerKey" => "node-29"
    "contentKey" => "thread-6900613"
    "view" => "XF:Thread\View"
    "template" => "thread_view"
  ]
  "audapp" => App {#232
    #app: App {#2}
    #appUserAgentString: null
    #isMobileAppRequest: false
    #isAlertsViewCheck: false
    #doesRemoveHeaderAndFooter: false
    #mobileAppOS: null
    #mobileAppVersion: null
    #mobileAppMode: "light"
  }
  "audlive" => array:2 [
    "showNavItem" => array:1 [ …1]
    "liveRealmIds" => []
  ]
  "realms" => array:2 [
    "showNavItem" => array:1 [ …1]
    "liveRealmIds" => []
  ]
]

TRASOL vs Strelok Pro

Dirty8404

Sergeant of the Hide
Full Member
Minuteman
Apr 17, 2018
213
185
I’m looking to move up the food chain from the extremely basic free ballistics app I currently use.

Looking at Strelok Pro and TRASOL, these two seem to consistently come up in ballistics app discussions. Setting aside 4DOF for now because I’m not a fan of the interface.

If you have both which do you use more and why? Here are some things I’m specifically interested in comparing, but please feel free to add your own pro/cons.

(1) Interface intuitiveness.

(2). Accuracy into the transsonic region compared to your known dope. In other words, how well do the curves match when trued.

(3). Accuracy (when trued) when the environmentals (in my case density altitude) change. I shoot at 6k-8k DA, and hunt at 10k-13k feet, for reference.

(4). Ability to easily store/reference multiple loads for multiple rifles. Exporting dope cards for printing is a nice feature as well, but not make/break. I can write up my own if need be.

I do use IOS if that makes a difference, and thanks in advance for your input.
 
  • Like
Reactions: DeftSystems
Hey @Dirty8404, I’m the developer of TRASOL for iOS. We actually just launched version 2.0 last week which is a complete overhaul of the app. Now you can download it for free to try it out, and if you like it you can always pay to upgrade some features later.

People have been reporting good accuracy, and based on your requirements I think you’ll like it... but obviously I’m biased, so you can decide for yourself.

Hope this helps!
 
I use Strelok Pro more because I'm still waiting on the Android version of TRASOL. I have it but it don't work too good. Thus, we are waiting for our update in the Android family. Also, they are apples and oranges as far as ballistics apps go. TRASOL and Strelok use two entirely different concepts. The former is really for the ELR shooter and is more adaptabile to accurate trans and subsonic target distances. That being said what used to be considered long distance is now medium distance. Most of us shoot medium distances. Thus, Strelok is perfectly fine and has the best user interface out there.
 
  • Like
Reactions: LastShot300
You get the multi BC option with Strelok Pro and quite a few more features that you may or may not need.

Trasol is reallly intuitive. I just downloaded Trasol last week, but I like the simplicity of it. But if I am comparing bullets, calibers, running numbers looking for trends etc. Strelok Pro is hard to beat. I like having multiple apps to run comparisons. If you bought both you would be out a total of less than $35.
 
I am relatively new to long range shooting, but have been comparing and experimenting with Strelok Pro, Ballistics Arc, and Ballistics (Peak). All paid versions. I have also bought and am learning to use the Weatherflow weather meter. I did download, and tried, the free version of Trasol. At the moment, I like SP and BA because they will accept input from the Weatherflow. They also have libraries. I am just hard pressed to drop another $26 on Trasol right now with what I already have. Perhaps if it had been available sooner.
 
Because it is based on the Pejsa drag model (1980s) and further refined by Patagonia. So, Patagonia is super proprietory thus I just say Pejsa. Strelok is based on the Ingalls model (1880s). In competition is Litz more modern custom drag model. Litz is not a big fan of the Pejsa closed form "accepted mathematical trickery" methodology. I've worked through the Pejsa formulas and it only taught me what closed form expressions are all about and I suspect Patagonia is further refined. But it does work for getting way out there in the ELR world. So, does Litz. Never the two shall meet though. So, it is only fair to include Litz in the ELR preferences. It is an ongoing highly competitive fight.
 
Last edited by a moderator:
This is fantastic info everyone, thank you! I’ll get both, since it really seems they are different and complementary tools.

I’m definitely interested in the differences in the drag models between the two. I have a pretty strong engineering education with upper level math, if anyone has technical papers or good readings on/comparing Litz, Pejsa, Ingalls, or related to these calculations that they found interesting that would be awesome.
 
I’ve only ran StrelokPro so I can’t give you a comparison but I’ve been happy with it as long as I do my job and get my inputs put in correctly.
 
In terms of accuracy, both are valid, it boils down to personal preferences for the interface.
Functionally, Strelok Pro has the advantage of integrating Lapua Doppler Cd curves (only useful if you shoot Lapua, more precise than generic models). On the other hand, Trasol has a much cleaner and intuitive interface, which presents me with data I need, and does not present me with noise (Strelok -- on the contrary -- outputs some useless stuff, which clutters the display).
Here's a long and boring review of Trasol, I have written some time ago: https://guns.ptosis.ch/trasol-review
(conclusions may or may not be valid for the current version, but I believe the engine did not change much)
A word of caution re: Trasol -- the current version does not work with Android 7+ (crashes on startup).
 
I'm with the other (most) Strelok Pro users here. I am totally satisfied with it. Intuitive enough for me. Works. Had a question and emailed the maker and got an immediate reply. But, I have not used the other choice. Did not care for Hornady's 4dof of whatever's user interface. SP is easy to use and has great data base of bullets, reticles, and can 'create ' rifles which is use to add my different loads. FWIW, lg (I think you got the right idea,,,, for the money just get both.)
 
I use both the Hornady 4DOF and TRASOL. I really really want to like the 4DOF more than I do because its based on actual doppler curves. At least as I understand it. I tried doing the long-range truing this past week before my match at 732 yards. Prior to the Axial Form Factor tweak, 4DOF gave me 4.63 mils and TRASOL straight up said 4.51. AFTER the Form Factor tweaks the 4DOF output increased to 4.7. Real-world measurement was 4.5 mils. No se??

The one caveat I can add was that my Bushnell 1 mile ARC rangefinder could not catch a reading from my target so I ended up using the range based on GeoBallistics maps. GPS is good but as good as a laser? I'll try it again but Lowlight loves the consistency of TRASOL and I'm beginning to see why.

I'm going to shoot the Guardian match next month in AZ so I will redo all my data to include the 4DOF predictions. If this thread is still active I'll update everyone on what I find.
 

Attachments

  • Hornady - 4DoF technical paper.pdf
    1.8 MB · Views: 196
  • Like
Reactions: LastShot300
I use both the Hornady 4DOF and TRASOL. I really really want to like the 4DOF more than I do because its based on actual doppler curves. At least as I understand it. I tried doing the long-range truing this past week before my match at 732 yards. Prior to the Axial Form Factor tweak, 4DOF gave me 4.63 mils and TRASOL straight up said 4.51. AFTER the Form Factor tweaks the 4DOF output increased to 4.7. Real-world measurement was 4.5 mils. No se??

The one caveat I can add was that my Bushnell 1 mile ARC rangefinder could not catch a reading from my target so I ended up using the range based on GeoBallistics maps. GPS is good but as good as a laser? I'll try it again but Lowlight loves the consistency of TRASOL and I'm beginning to see why.

I'm going to shoot the Guardian match next month in AZ so I will redo all my data to include the 4DOF predictions. If this thread is still active I'll update everyone on what I find.
Given your findings clearly TRASOL has the edge over 4DOF. No need to tweak it and put you on target. Lowlight is correct when it comes to the best engine out there.
 
Given your findings clearly TRASOL has the edge over 4DOF. No need to tweak it and put you on target. Lowlight is correct when it comes to the best engine out there.
Even TRASOL needs tweaking. There is no ballistic app that will accurately predict every combination. That is why TRASOL lets you adjust the drag coefficient.
 
I've used both, haven't got into the math to the extent that others here have, but used them enough to know that both are highly effective and accurate. I personally prefer Strelok, but that's just one guy's opinion.

FWIW, my two bits is that whatever you decide to use, your results will only be as good as your inputs. Garbage in garbage out! Take your time and gather good data.
 
Last edited:
Even TRASOL needs tweaking. There is no ballistic app that will accurately predict every combination. That is why TRASOL lets you adjust the drag coefficient.
I meant in the post above, having said that I've found Coldbore (or TRASOL) the program with the least need to tweak the drag coefficient most of the time, providing a good BC and MV are used.
 
Hey @Dirty8404, I’m the developer of TRASOL for iOS. We actually just launched version 2.0 last week which is a complete overhaul of the app. Now you can download it for free to try it out, and if you like it you can always pay to upgrade some features later.

People have been reporting good accuracy, and based on your requirements I think you’ll like it... but obviously I’m biased, so you can decide for yourself.

Hope this helps!

like to know if the upgrade can make a printable dope card. Thats one thing I want to be able to do. Thanks
 
@Hundley thank you for posting on this thread, a couple of questions. First what are your plans and timeline for Android? Second in some solvers I see a field for "Bullet Length" I assume this is important to the math you provide?

I am having a hard time finding this specification for factory ammo, I am using 6.5CM Prime 130 Match. I could rip one apart I suppose....
 

Strelok Pro has the Prime 6.5CM 130-gr Match cartridge in its database.

Bullet length: 1.0 inch.
Diameter: 0.264
Weight: 130.0
BC (G7): 0.289
Speed: 2851

Screenshot_20181124-083502_Strelok Pro.jpg
 
Last edited:
  • Like
Reactions: seansmd
@Hundley thank you for posting on this thread, a couple of questions. First what are your plans and timeline for Android? Second in some solvers I see a field for "Bullet Length" I assume this is important to the math you provide?

I am having a hard time finding this specification for factory ammo, I am using 6.5CM Prime 130 Match. I could rip one apart I suppose....

Prime uses the Norma 130 BTHP.. Can get the specs off the norma website
 
  • Like
Reactions: seansmd
Two different engines,

Strelok is freeware, and old 3DOF stuff, Trasol is Coldbore which is more of an advanced MPM solver based on the adjustments made by Dr Arthur Pesja back in the 1980s vs the 3DOF stuff written in the 50s.

UI interfaces are what they are, but there is a real difference under the hood when looking at TRASOL vs the rest (other the 4DOF which is very similar)

Every App will work inside 1000 yards under most condition, it's after that they start to deviate
 
Two different engines,

Strelok is freeware, and old 3DOF stuff, Trasol is Coldbore which is more of an advanced MPM solver based on the adjustments made by Dr Arthur Pesja back in the 1980s vs the 3DOF stuff written in the 50s.

UI interfaces are what they are, but there is a real difference under the hood when looking at TRASOL vs the rest (other the 4DOF which is very similar)

Every App will work inside 1000 yards under most condition, it's after that they start to deviate

I had never heard of Trasol until this forum (I'm new here). I looked it up in the Google Play Store (I have an android phone).

Trasol has only 74 reviews that average 2.6 stars (out of 5). Many of the most recent reviews mention that Trasol has virtually abandoned their Android version and that it won't run at all on recent versions of Android. Last update is listed as July 2017.

By way of contrast...

Strelok Pro (not freeware) has 2,846 reviews with an average of 4.9 stars. The developer stays on top of it with updates and is VERY responsive to user suggestions (ask me how I know). :) Last update: November 21, 2018.

Hornady's (actually freeware) app has 456 reviews, averaging 4.3 stars. (Got it on my phone, just recently. So far... with limited "playing" with it... don't really like it.) Last update: November 15, 2018.

Ballistics ARC with 129 reviews averaging 4.2 stars. (Got it on my phone - don't really like it.) Last update: October 18, 2018.

Shooter has 1,599 reviews averaging 4.6 stars. (haven't tried this one) Last update: October 2, 2017.

Sure... reviews aren't everything, but there are rather obvious trends here. Trasol stands out as being very problematic for Android users. Maybe not for iOS users? Hopefully, that will change soon, if it's a good program. I'm always open to something better than what I have. :)

I hope I haven't stepped on any toes with my comments, as it is not my intent. I have no financial interest in any of the apps mentioned. Just a paying customer.
 
It was not updated the same as the Apple version,

TRASOL lost their developer early on to Online Gaming, and the program suffered, it took almost a year to replace him.

Since getting the new Developer, the main focus has been the Apple stuff, Android update will follow shortly

TRASOL is better even with the app issue, the Apple version is shit hot now, and once the Android version is updated it will be full circle

Most people treat the apps as games and have no clue what they are actually doing.
 
I got Trasol working on android 8.1 by manually enabling the various permissions within the General App Settings setup. Strelok Pro has a great bullet/cartridge library. Being something of a newbie I have mostly used shooter which has worked well for me though I only shoot out to 1000 yards...
What Frank said, after 1000 give or take, you will notice the robustness and accuracy of Trasol vs the 3DOF apps and how critical then, the drag-adjustment mechanism comes into play vs the usual tweaking.
 
  • Like
Reactions: MediumSpeed
I got Trasol working on android 8.1 by manually enabling the various permissions within the General App Settings setup. Strelok Pro has a great bullet/cartridge library. Being something of a newbie I have mostly used shooter which has worked well for me though I only shoot out to 1000 yards...

Nice, I was able to get version 1.2.3 to run on Android by giving it access to device storage in settings. Sure this is an old version, but I'll try it out and see how it seems to work.
 
  • Like
Reactions: MediumSpeed
The Mathematical Predictive Model
The ballistics engine of ColdBore© is a propietary aeroballistics model based on a Kalman modified filter, which includes numerous proprietary extensions. The only resemblance to the method developed by the late Professor Arthur J. Pejsa ( who finished his research circa 1953 ) is just partially related to the way it handles the drag slope. This propietary method has no velocity or range restrictions, covering the full spectrum from supersonic, transonic and subsonic trajectories at extended ranges with muzzle velocities starting at any sonic boundary, giving a continuous, non-linear solution. This engine is the result of over 3 years of original research in the field of aeroballistics.

It has been proved time after time its superior predictive capability over the traditional "Point Mass" method that is used on almost any other program, that requires the use of the G7 drag function to yield reasonable solutions in and beyond the transonic range. Even using G7 the results may be not satisfactory, usually calling for the so called "custom drag curves" and the use of "truing" procedures. None of these shortcomings are needed in ColdBore© to produce outstanding predictions.

Many enhancements to the algorithms were developed, using both iterative and recursion approaches to solve the problem of computing downrange figures for velocity, time of flight and drop, the main variables of the solution from which others parameters are derived.

The model is an analytic, closed-form solution that doesn’t use tables generated for standard-shaped projectiles, a fact of paramount importance, since while it does not rely on the G1/G7 drag model used in most of the available programs, (some following the Mayeveski-Ingalls tables), the present method can use a readily available, G1/G7 ballistic coefficient as published, incorporating a custom drag function in order to model the specific projectile.

Since it effectively uses an analytic function ( of Mach number ) in order to match the drag curve of the specific bullet, it does not need to rely on other drag tables to approximate a better fit.

A ballistics software foundation rests in its ability to predict accurate trajectories, matching field results as the ultimate test.

Nearly all ballistic software take for granted that a specific drag function correctly describes the drag characteristics of a bullet as related to its ballistics coefficient, consequently, whether the bullet style is a flat-based, spitzer, a boat-tail, ULD, etc they take care of them to the same drag function as indicated by the published BC, usually the G1/G7 function.

The state of the art mathematical approach taken here, is quite different and a major improvement, of special application to the long range shooter.

Being practical, the use of the published BCs data as available, by almost every major bullet manufacturer is almost mandatory. However this program does not use it to calculate the changes to the drag function over the supersonic velocity range. In other words, this program ballistics engine uses a drag coefficient (DC) that affects the calculated rate of bullet deceleration.

Applying this DC, the resultant trajectory calculations are very accurate for that particular bullet because the drag function has effectively been tailored for that particular bullet.

balengine_clip_image001.jpg

As the drag coefficient can be modeled as a simple function of the Mach number, the particular functional form of the drag coefficient allows variations in the shape of the drag curve to be considered parametrically.

It's easily demonstrated that the projectile trajectory and velocity history can be characterized in terms of three parameters: the projectile’s muzzle velocity, a parameter related to the muzzle retardation, and a single parameter defining the shape of the drag curve.

Other approaches ( on the market ) base their predictions on trying to make a match of a specific bullet ( yours ) to like drag data which is available to examine the variation of the drag coefficient with Mach number in the standard axisymmetric ( having symmetry around an axis ) projectile shapes, that were tested in the early to mid-1900’s.

These resulting drag curves are referred to as the Ingalls, G1, G2, G5, G6, G7, and G8 drag curves.

Most bullet manufacturers assume and publish the G1 drag function shape. Examination of the form of a G1 standard-projectile, will to the obvious conclusion that it doesn't apply to the modern boattail bullet shapes in common use today. The G7 or G8 shape is much more appropriate but general availability of these ballistic coefficients is almost nonexistent.

Particularly, the G1, G5, and G7 curves model a specific bullet form, since they were deduced from, and it's common for some programs to adapt ( modify ) the G1 drag curve in an effort to fit the G5 to G7 bullet shapes, and in other words, these approaches are, at best an improvement to model modern bullet shapes in order to make predictions more accurate.

That's why the BC must be defined as a function of velocity. The present solution uses the actual drag, and not rely on an average fit to a non-representative standard or table-based drag function.

In short, what these models can, is to compute accurate trajectory values if range is moderate, up to approximately 600 yards, beyond that, you need a different way to model air drag and to account specifically for a drag curve that matches your bullet dynamics. This is what this method does precisely.

The method used here takes on a different approach, since if the shooter takes the necessary effort to actually measure the Drag Coefficient, the model will make an almost perfect fit, under different environmental conditions, thus yielding very precise downrage values for Velocity, Time of Flight and Drop.

The Drag Coefficient
The key element to compute accurate trajectories is the Drag curve, and of course its modeling via an appropriate function.

To accomplish this we need to know its initial values, its mean value and its maximum value, all across the supersonic, transonic and subsonic range or at any initial Velocity if not starting at typical rifle's velocities.

These aspects of the drag curve are modeled through a retardation factor <b>F</b>, or its inverse the deceleration A, slope factor ( the Drag Coefficient ) N, which is the rate of change of the retardation with range, and finally, the velocity at which the curve changes Vk, having reached its maximum value.

For the sake of simplicity and with the design criteria of being practical, the user only needs to deal with the slope factor, and that coupled with the G1-based BCs will yield very accurate results, so there is no need, at this level, to cope with velocities boundaries, since they are in fact modeled by the program itself, as well as the necessary different slope factors needed when the bullet's velocity goes through different sonic ranges.

Typically, this slope factor goes, in terms of bullet shape, from 0.1 ( flat-nose ) to 0.9 ( very-low-drag ), and a default value of 0.5 can be used for most modern spitzer-type bullets with confidence, and if not possible to obtain it from actual measurements, its value can be determined from bullet's shape.

However for maximum accuracy, especially at long range, its value should be determined by the method used here, which involves the measurement of four velocities ( loss ), that evaluate retardation <b>F, ( Fa and Fb )</b> at two known apart distances.

Do not confuse BCs with this drag value, since two bullets with the same BC may have different deceleration ratios, due to shape, materials, construction, barrel's twist rate, etc.

WARNING: It's important to remark, that this program does not favor any other method to evaluate it, especially those based on measuring Drop at a certain range, because there are so many errors that can be introduced it doesn't lend itself as being very viable. Its determination is totally affected by shooter/gun errors and in fact does not represent the actual problem of velocity, which can be measured very precisely by means which are both available and affordable.

Accuracy
One of the most frequently asked questions is "how accurate are the calculated downrange values?"

As with any software with a good mathematical model, the accuracy of the input values determines the accuracy of the output values.

In exterior ballistics, elements such as shape, caliber, weight, initial velocities, rotation, air resistance, and gravity help determine the path of a projectile from the time it leaves the gun until it reaches the target.

While the accuracy of the mathematical model is superior, bare in mind that actual field results can differ due to the shooter's ability, the gun, the ammo and a myriad of other factors that affect a bullet's flight, making necessary an inordinate amount of time and equipment to collect, thus rendering impossible a practical solution, especially at longer ranges.

At the same time, there are too many variables that magnify their effect at such ranges, not to mention the shooter's ability to cope with such a challenge.

On the other hand, as any shooter ( especially those involved in long range engagements ) know, some effects like wind are difficult to estimate, or the individual characteristics of a rifle for example, or plain shooter errors, will make differences between actual impact location versus predicted ones more evident. Unfortunately there is no practical way to cope or account for these changes, and eventually nothing replaces carefully collected field data.

The most common ballistic error sources are variations of the muzzle velocity, variations of the angle of departure and the azimuth, variations of the bullet drag, variations of wind speed and wind direction, variations of the lift force, bullet static and dynamic unbalances, etc and from the shooter's side we can count on aiming errors, sighting error, canting of the gun, etc.

It's important to note that predicting accurate downrange values past the 3000 yards/meters limit, is almost impossible without taking special, ad-hoc efforts well beyond the scope of most shooters. A good example as well as a main source for errors are the published BC values that we must rely on and take for granted.

So, if the input values are as accurate as can be practically determined, then there won't be any statistically significant difference between the calculated down range values and actual measured values, within the range of values allowed for both input data as well as it's ouput.

If you know anything about statistics, then you know that any given shot may not match the calculated value, but the average of a group of shots comes very close, and the more shots in the group, the closer the true average is to the calculated value. The difference between individual shots and the group's average is called Variability.

However, it should be recognized, , that neither aiming errors nor the ballistic dispersion can ever be reduced to zero, and therefore whether or not a target will be hit by any particular shot is a question of probabilities, depending on the size of the target, the proficiency of the rifleman, the accuracy of the information about the conditions under which the shot will be made, and the ballistic dispersion of the gun/ammunition system.

The gun enthusiast should learn by experience and recognize realistically the outer limits of the ranges at which various types of targets can be engaged with a reasonable probability of success.

The Basics
Exterior ballistics refers to the trajectory of a bullet once it has left the muzzle of a firearm.

Exterior ballistics is a generic term used to describe a number of natural phenomena that tend to cause a bullet in flight to change direction or velocity or both. These phenomena are gravity, drag, wind, drift (when considering spin-stabilized bullets) and Coriolis effect.

The computation of relative-motion effect produces the actual point of collision between the bullet and the target. The computation of the effects of ballistics produces aiming corrections as a result of the curvature of the bullet's flight path.

These corrections don't change the final collision point, but cause the trajectory of the bullet to intersect the flight path of the target. The ultimate aim of ballistic computation, then, is to produce angular corrections to the azimuth and elevation values derived from the relative-motion results.

Inherent in these calculations is the computation of time-of-flight of the bullet, which in turn is used to facilitate the relative-motion computation.

Ideally, it is desired to produce a procedure that totally describes the complex trajectory of a bullet. When provided the coordinates of the future target position as input data, this procedure would produce angles of launch and bullet time-of-flight as output.

It must be emphasized here that the central problem of bullet delivery is the solution of the intersection of two curves, one described by the motion of the target and the other described by the motion of the bullet.

It's knowledge can be used to extend the effective range of a hunting rifle, help set sights for different locations and weather conditions, select calibers and ammunition or even help select reload components, all of this based on sound mathematical principles.

Background
The analysis and prediction of the trajectory of projectiles has been a subject investigated for many centuries and is still a topic of interest today.

The interest and advancement of the problem has come from two fields: mathematics and physics. As a mathematical problem, the focus has been on the methods for solution of the governing equations.

Some of the most noted mathematicians and physicists of the past several centuries, such as Galileo, Bernoulli, and Euler, have investigated the mathematical solution of this problem and have obtained technical advances important for trajectory prediction.

To accurately determine the trajectory of a projectile, one must also properly account for the physical effects such as gravity and the air resistance or drag of the projectile. In additional to his laws of motion, Newton has also been credited for the development of the quadratic law of resistance characterizing the aerodynamic drag of a body.

Further advances have shown that more sophisticated characterization of the drag is required to predict the trajectory across the complete flight regime of many projectiles.

Over a century ago, Mayevski found that it was possible to express the drag of a projectile as proportional to a power of the velocity within restricted velocity regimes. This has been described as the Mayevski Law of Resistance. Piecing together the drag in adjacent velocity regimes using this approach allowed the drag to be characterized over the complete flight regime. Mayevski’s advance led to further developments in trajectory prediction methods.

One of the more famous methods is the Siacci method. The Siacci method was widely used to predict the flat-fire trajectories for decades after its initial development. The method still has some adherents in the sporting and ammunition community.

With the advent of the computer, the Siacci method has been replaced by more modern numerical methods.

These methods allow rapid and accurate computation of the projectile’s trajectory provided the physical characteristics of the projectile (such as the drag) and the atmosphere are appropriately modeled. Modern aerodynamic analysis and trajectory programs provide an excellent means of accurately determining the flight behavior of specific designs.

The increased sophistication of trajectory prediction methods has some unfortunate consequences. The user must often provide an array of details that may or may not be relevant to the answer that is being sought. Additionally, these methods often obscure critical insights into the relationship between important parameters that produce the physical behavior of interest.

For example, there are occasions where a ballistician would like to be able to predict aspects of the flight trajectory without completely defining the geometry or aerodynamic characteristics of a projectile, such as in preliminary design or experimental testing.

In these cases, simplified analyses can provide accurate results with the minimum amount of relevant input from the user and provide the designer with a clearer understanding of the primary design variables.

Gravity
The force of gravity always tends to accelerate an object downward toward the center of the earth. The effects of this force on the trajectory of a bullet are well known and if considered alone result in very simple solution to the trajectory problem.

In a vacuum on a "flat" nonrotating earth, the horizontal component of the initial velocity of the bullet (V0 x cos ) remain unchanged. However, the vertical component (V0 x sin ) is continuously changed as a result of the acceleration due to gravity. This changing vertical velocity results in a parabolic trajectory.

Drag
In the vacuum trajectory situation, the solution is easily obtained because of the simplifications and assumptions made in formulating the problem.

When the effects of the atmosphere are considered, forces other than gravity act on the bullet, which cause it to deviate from a pure parabolic path.

This deviation results specifically from the dissipation of energy as the bullet makes contact with the atmosphere.

It has been found that the loss of energy of a projectile in flight is due to :

- Creation of air waves--The magnitude of this effect is influenced by the form (shape) of the bullet as well as by the cross-sectional area.

- Creation of suction and eddy currents--This phenomenon is chiefly the result of the form of the bullet and in gun projectiles specifically, the form of the after body.

- Formation of heat, thus energy is dissipated as a result of friction between the bullet and the air mass.

The combined effect of energy loss is a deceleration of the projectile during its time-of-flight. This deceleration acts to decrease the velocity of the bullet as it travels through the atmosphere. For a given projectile form, the retardation in velocity is directly proportional to the atmospheric density and to the velocity itself. This deceleration is called parasitic drag.

Parasitic drag always acts in a direction opposite to that of the motion of the bullet.

As a result, two fundamental interdependent actions take place while a bullet is in flight.

First, the force of drag at any point in the bullet's trajectory is a direct function of the velocity at that point. Because the drag force is continuously retarding the velocity of the bullet, the force of drag itself is continuously changing over the entire time-of-flight of the bullet, with drag dependent upon velocity and in turn velocity dependent upon drag.

Thus, the magnitude of both the velocity and the drag are changing with each dependent upon the other. Second, as the bullet travels the curved path of the trajectory, the angle is never constant, which results in the force of drag continuously changing direction throughout the entire flight of the bullet.

The force of drag constantly changes in magnitude as a function of velocity and in direction as a function of the direction of motion of the bullet.

The end result of drag is to slow the projectile over its entire trajectory, producing a range that is significantly shorter than that which is achievable in a vacuum.

While the vacuum trajectory is symmetric about the mid-range value, with the angle of fall equaling the angle of departure, the atmospheric trajectory is asymmetric. The summit of the trajectory is farther than mid-range, and the angle of fall is greater than the angle of departure.

Additionally, the atmospheric trajectory is dependent on projectile mass due to external forces--which also, unlike the vacuum case, causes the atmospheric trajectory's horizontal component of velocity to decrease along the flight path. This results in a computation of the necessary departure angle to affect maximum range, whereas in a vacuum the maximum range's departure angle is 45°.

In consideration of the elevation at which maximum range is achieved, there are two offsetting effects: the change in drag with projectile velocity and the atmospheric density. A projectile's velocity is greatest immediately upon leaving the gun, thus drag is greatest at this time also.

For small, lightweight projectiles, deceleration is greatest at the beginning of flight; therefore, to take advantage of improvement in horizontal range while the velocity is greatest, it is necessary to shoot at elevations less than 45°.

In large projectiles such as those employed on battleships it is best to employ elevations above 45° to enable the projectiles to quickly reach high altitudes where air density and thus drag are decreased. Range increases result from the approximation of vacuum trajectory conditions in the high-altitude phase of projectile flight.

Wind
The effects of wind can be divided into two components: range wind and cross wind. Range wind is that component of wind that acts in the plane of the line of fire. It serves to either retard or aid the projectile velocity, thus either increasing or decreasing range.

balengine_clip_image002.jpg

Cross wind acts in a plane perpendicular to the line of fire and serves to deflect the projectile either to the right or left of the line of fire.

Wind acts on the projectile throughout the time of flight; therefore, the total deviation in range and azimuth is a function of the time-of-flight.

Drift
Drift of a gun projectile is defined as the lateral displacement of the projectile from the original plane of fire due only to the effect of the rotation of the projectile. The principal cause of the drift lies in the gyroscopic properties of the spinning projectile. According to the laws of the gyroscope, the projectile seeks, first of all, to maintain its axis in the direction of its line of departure from the gun.

The center of gravity of the projectile, however, follows the curved path of the trajectory, and the instantaneous direction of its motion, at any point, is that of the tangent to the trajectory at that point. Therefore, the projectile's tendency to maintain the original direction of its axis soon results in leaving this axis pointed slightly above the tangent to the trajectory.

balengine_clip_image003.jpg

The force of the air resistance opposed to the flight of the projectile is then applied against its underside.

This force tends to push the nose of the projectile up, upending it. However, because of the gyroscopic stabilization, this force results in the nose of the projectile going to the right when viewed from above.

The movement of the nose of the projectile to the right then produces air resistance forces tending to rotate the projectile clockwise when viewed from above. However, again because of the gyroscopic stabilization, this force results in the nose of the projectile rotating down, which then tends to decrease the first upending force.

Thus, the projectile curves or drifts to the right as it goes toward the target. This effect can easily be shown with a gyroscope.

A more detailed analysis of gyroscopic stability would show that a projectile is statically unstable, but because of the gyroscopic effects, becomes dynamically stable. These effects actually cause the axis of the projectile to make oscillatory nutations about its flight path. Also the Magnus Effect, where a rotating body creates lift (figure 20-9) must be considered. The Magnus Effect is what causes a pitched baseball to curve.

Coriolis Effect
The preceding effects have all considered the earth to be flat and non-rotating.

The Coriolis effect is caused by the rotation of the earth.

The Coriolis effect is an inertial force described by the 19th-century French mathematician Gustave Gaspard Coriolis in 1835.

Coriolis showed that, if the ordinary Newtonian laws of motion of bodies are to be used in a rotating frame of reference, an inertial force ( acting to the right of the direction of body motion for counterclockwise rotation of the reference frame or to the left for clockwise rotation ) must be accounted for in the equations of motion.

balengine_clip_image004.jpg

The effect of the Coriolis force is an apparent deflection ( and it's also called a fictitious force ) of the path of an object that moves within a rotating coordinate system.

The moving object does not actually deviate from its path, but it appears to do so because of the motion of the coordinate system. While the effect of the earth's movement while a projectile is in flight is negligible for short and medium range shots, for longer range shots the Coriolis effect may cause the projectile to drift considerably from it's intended trajectory.

Actually this is not the case, and centripetal acceleration and Coriolis acceleration caused by the rotating earth must be considered. The centripetal acceleration of a point on the earth's surface will vary with its distance from the rotation axis. Thus, the difference in the velocities of the launcher and the target because of their different locations on the earth's surface must be considered.

The Coriolis acceleration force is created when a body or projectile moves along a radius from the axis of rotation of the earth ( or a component of it ).

This force tends to curve an object to the right in the Northern Hemisphere and to the left in the Southern Hemisphere. An observable example would be that the air moving outward from a high becomes clockwise wind and air moving into a low becomes counterclockwise wind.

In the Northern Hemisphere the deflection is to the right of the motion; in the Southern Hemisphere it is to the left. The Coriolis deflection of a body moving toward the north or south results from the fact that the earth's surface is rotating eastward at greater speed near the equator than near the poles, since a point on the equator traces out a larger circle per day than a point on another latitude nearer either pole.

A body traveling toward the equator with the slower rotational speed of higher latitudes tends to fall behind or veer to the west relative to the more rapidly rotating earth below it at lower latitudes.

Similarly, a body traveling toward either pole veers eastward because it retains the greater eastward rotational speed of the lower latitudes as it passes over the more slowly rotating earth closer to the pole. It is extremely important to account for the Coriolis effect when considering projectile trajectories, terrestrial wind systems, and ocean currents.
 
The Mathematical Predictive Model
The ballistics engine of ColdBore© is a propietary aeroballistics model based on a Kalman modified filter, which includes numerous proprietary extensions. The only resemblance to the method developed by the late Professor Arthur J. Pejsa ( who finished his research circa 1953 ) is just partially related to the way it handles the drag slope. This propietary method has no velocity or range restrictions, covering the full spectrum from supersonic, transonic and subsonic trajectories at extended ranges with muzzle velocities starting at any sonic boundary, giving a continuous, non-linear solution. This engine is the result of over 3 years of original research in the field of aeroballistics.

It has been proved time after time its superior predictive capability over the traditional "Point Mass" method that is used on almost any other program, that requires the use of the G7 drag function to yield reasonable solutions in and beyond the transonic range. Even using G7 the results may be not satisfactory, usually calling for the so called "custom drag curves" and the use of "truing" procedures. None of these shortcomings are needed in ColdBore© to produce outstanding predictions.

Many enhancements to the algorithms were developed, using both iterative and recursion approaches to solve the problem of computing downrange figures for velocity, time of flight and drop, the main variables of the solution from which others parameters are derived.

The model is an analytic, closed-form solution that doesn’t use tables generated for standard-shaped projectiles, a fact of paramount importance, since while it does not rely on the G1/G7 drag model used in most of the available programs, (some following the Mayeveski-Ingalls tables), the present method can use a readily available, G1/G7 ballistic coefficient as published, incorporating a custom drag function in order to model the specific projectile.

Since it effectively uses an analytic function ( of Mach number ) in order to match the drag curve of the specific bullet, it does not need to rely on other drag tables to approximate a better fit.

A ballistics software foundation rests in its ability to predict accurate trajectories, matching field results as the ultimate test.

Nearly all ballistic software take for granted that a specific drag function correctly describes the drag characteristics of a bullet as related to its ballistics coefficient, consequently, whether the bullet style is a flat-based, spitzer, a boat-tail, ULD, etc they take care of them to the same drag function as indicated by the published BC, usually the G1/G7 function.

The state of the art mathematical approach taken here, is quite different and a major improvement, of special application to the long range shooter.

Being practical, the use of the published BCs data as available, by almost every major bullet manufacturer is almost mandatory. However this program does not use it to calculate the changes to the drag function over the supersonic velocity range. In other words, this program ballistics engine uses a drag coefficient (DC) that affects the calculated rate of bullet deceleration.

Applying this DC, the resultant trajectory calculations are very accurate for that particular bullet because the drag function has effectively been tailored for that particular bullet.

balengine_clip_image001.jpg

As the drag coefficient can be modeled as a simple function of the Mach number, the particular functional form of the drag coefficient allows variations in the shape of the drag curve to be considered parametrically.

It's easily demonstrated that the projectile trajectory and velocity history can be characterized in terms of three parameters: the projectile’s muzzle velocity, a parameter related to the muzzle retardation, and a single parameter defining the shape of the drag curve.

Other approaches ( on the market ) base their predictions on trying to make a match of a specific bullet ( yours ) to like drag data which is available to examine the variation of the drag coefficient with Mach number in the standard axisymmetric ( having symmetry around an axis ) projectile shapes, that were tested in the early to mid-1900’s.

These resulting drag curves are referred to as the Ingalls, G1, G2, G5, G6, G7, and G8 drag curves.

Most bullet manufacturers assume and publish the G1 drag function shape. Examination of the form of a G1 standard-projectile, will to the obvious conclusion that it doesn't apply to the modern boattail bullet shapes in common use today. The G7 or G8 shape is much more appropriate but general availability of these ballistic coefficients is almost nonexistent.

Particularly, the G1, G5, and G7 curves model a specific bullet form, since they were deduced from, and it's common for some programs to adapt ( modify ) the G1 drag curve in an effort to fit the G5 to G7 bullet shapes, and in other words, these approaches are, at best an improvement to model modern bullet shapes in order to make predictions more accurate.

That's why the BC must be defined as a function of velocity. The present solution uses the actual drag, and not rely on an average fit to a non-representative standard or table-based drag function.

In short, what these models can, is to compute accurate trajectory values if range is moderate, up to approximately 600 yards, beyond that, you need a different way to model air drag and to account specifically for a drag curve that matches your bullet dynamics. This is what this method does precisely.

The method used here takes on a different approach, since if the shooter takes the necessary effort to actually measure the Drag Coefficient, the model will make an almost perfect fit, under different environmental conditions, thus yielding very precise downrage values for Velocity, Time of Flight and Drop.

The Drag Coefficient
The key element to compute accurate trajectories is the Drag curve, and of course its modeling via an appropriate function.

To accomplish this we need to know its initial values, its mean value and its maximum value, all across the supersonic, transonic and subsonic range or at any initial Velocity if not starting at typical rifle's velocities.

These aspects of the drag curve are modeled through a retardation factor <b>F</b>, or its inverse the deceleration A, slope factor ( the Drag Coefficient ) N, which is the rate of change of the retardation with range, and finally, the velocity at which the curve changes Vk, having reached its maximum value.

For the sake of simplicity and with the design criteria of being practical, the user only needs to deal with the slope factor, and that coupled with the G1-based BCs will yield very accurate results, so there is no need, at this level, to cope with velocities boundaries, since they are in fact modeled by the program itself, as well as the necessary different slope factors needed when the bullet's velocity goes through different sonic ranges.

Typically, this slope factor goes, in terms of bullet shape, from 0.1 ( flat-nose ) to 0.9 ( very-low-drag ), and a default value of 0.5 can be used for most modern spitzer-type bullets with confidence, and if not possible to obtain it from actual measurements, its value can be determined from bullet's shape.

However for maximum accuracy, especially at long range, its value should be determined by the method used here, which involves the measurement of four velocities ( loss ), that evaluate retardation <b>F, ( Fa and Fb )</b> at two known apart distances.

Do not confuse BCs with this drag value, since two bullets with the same BC may have different deceleration ratios, due to shape, materials, construction, barrel's twist rate, etc.

WARNING: It's important to remark, that this program does not favor any other method to evaluate it, especially those based on measuring Drop at a certain range, because there are so many errors that can be introduced it doesn't lend itself as being very viable. Its determination is totally affected by shooter/gun errors and in fact does not represent the actual problem of velocity, which can be measured very precisely by means which are both available and affordable.

Accuracy
One of the most frequently asked questions is "how accurate are the calculated downrange values?"

As with any software with a good mathematical model, the accuracy of the input values determines the accuracy of the output values.

In exterior ballistics, elements such as shape, caliber, weight, initial velocities, rotation, air resistance, and gravity help determine the path of a projectile from the time it leaves the gun until it reaches the target.

While the accuracy of the mathematical model is superior, bare in mind that actual field results can differ due to the shooter's ability, the gun, the ammo and a myriad of other factors that affect a bullet's flight, making necessary an inordinate amount of time and equipment to collect, thus rendering impossible a practical solution, especially at longer ranges.

At the same time, there are too many variables that magnify their effect at such ranges, not to mention the shooter's ability to cope with such a challenge.

On the other hand, as any shooter ( especially those involved in long range engagements ) know, some effects like wind are difficult to estimate, or the individual characteristics of a rifle for example, or plain shooter errors, will make differences between actual impact location versus predicted ones more evident. Unfortunately there is no practical way to cope or account for these changes, and eventually nothing replaces carefully collected field data.

The most common ballistic error sources are variations of the muzzle velocity, variations of the angle of departure and the azimuth, variations of the bullet drag, variations of wind speed and wind direction, variations of the lift force, bullet static and dynamic unbalances, etc and from the shooter's side we can count on aiming errors, sighting error, canting of the gun, etc.

It's important to note that predicting accurate downrange values past the 3000 yards/meters limit, is almost impossible without taking special, ad-hoc efforts well beyond the scope of most shooters. A good example as well as a main source for errors are the published BC values that we must rely on and take for granted.

So, if the input values are as accurate as can be practically determined, then there won't be any statistically significant difference between the calculated down range values and actual measured values, within the range of values allowed for both input data as well as it's ouput.

If you know anything about statistics, then you know that any given shot may not match the calculated value, but the average of a group of shots comes very close, and the more shots in the group, the closer the true average is to the calculated value. The difference between individual shots and the group's average is called Variability.

However, it should be recognized, , that neither aiming errors nor the ballistic dispersion can ever be reduced to zero, and therefore whether or not a target will be hit by any particular shot is a question of probabilities, depending on the size of the target, the proficiency of the rifleman, the accuracy of the information about the conditions under which the shot will be made, and the ballistic dispersion of the gun/ammunition system.

The gun enthusiast should learn by experience and recognize realistically the outer limits of the ranges at which various types of targets can be engaged with a reasonable probability of success.

The Basics
Exterior ballistics refers to the trajectory of a bullet once it has left the muzzle of a firearm.

Exterior ballistics is a generic term used to describe a number of natural phenomena that tend to cause a bullet in flight to change direction or velocity or both. These phenomena are gravity, drag, wind, drift (when considering spin-stabilized bullets) and Coriolis effect.

The computation of relative-motion effect produces the actual point of collision between the bullet and the target. The computation of the effects of ballistics produces aiming corrections as a result of the curvature of the bullet's flight path.

These corrections don't change the final collision point, but cause the trajectory of the bullet to intersect the flight path of the target. The ultimate aim of ballistic computation, then, is to produce angular corrections to the azimuth and elevation values derived from the relative-motion results.

Inherent in these calculations is the computation of time-of-flight of the bullet, which in turn is used to facilitate the relative-motion computation.

Ideally, it is desired to produce a procedure that totally describes the complex trajectory of a bullet. When provided the coordinates of the future target position as input data, this procedure would produce angles of launch and bullet time-of-flight as output.

It must be emphasized here that the central problem of bullet delivery is the solution of the intersection of two curves, one described by the motion of the target and the other described by the motion of the bullet.

It's knowledge can be used to extend the effective range of a hunting rifle, help set sights for different locations and weather conditions, select calibers and ammunition or even help select reload components, all of this based on sound mathematical principles.

Background
The analysis and prediction of the trajectory of projectiles has been a subject investigated for many centuries and is still a topic of interest today.

The interest and advancement of the problem has come from two fields: mathematics and physics. As a mathematical problem, the focus has been on the methods for solution of the governing equations.

Some of the most noted mathematicians and physicists of the past several centuries, such as Galileo, Bernoulli, and Euler, have investigated the mathematical solution of this problem and have obtained technical advances important for trajectory prediction.

To accurately determine the trajectory of a projectile, one must also properly account for the physical effects such as gravity and the air resistance or drag of the projectile. In additional to his laws of motion, Newton has also been credited for the development of the quadratic law of resistance characterizing the aerodynamic drag of a body.

Further advances have shown that more sophisticated characterization of the drag is required to predict the trajectory across the complete flight regime of many projectiles.

Over a century ago, Mayevski found that it was possible to express the drag of a projectile as proportional to a power of the velocity within restricted velocity regimes. This has been described as the Mayevski Law of Resistance. Piecing together the drag in adjacent velocity regimes using this approach allowed the drag to be characterized over the complete flight regime. Mayevski’s advance led to further developments in trajectory prediction methods.

One of the more famous methods is the Siacci method. The Siacci method was widely used to predict the flat-fire trajectories for decades after its initial development. The method still has some adherents in the sporting and ammunition community.

With the advent of the computer, the Siacci method has been replaced by more modern numerical methods.

These methods allow rapid and accurate computation of the projectile’s trajectory provided the physical characteristics of the projectile (such as the drag) and the atmosphere are appropriately modeled. Modern aerodynamic analysis and trajectory programs provide an excellent means of accurately determining the flight behavior of specific designs.

The increased sophistication of trajectory prediction methods has some unfortunate consequences. The user must often provide an array of details that may or may not be relevant to the answer that is being sought. Additionally, these methods often obscure critical insights into the relationship between important parameters that produce the physical behavior of interest.

For example, there are occasions where a ballistician would like to be able to predict aspects of the flight trajectory without completely defining the geometry or aerodynamic characteristics of a projectile, such as in preliminary design or experimental testing.

In these cases, simplified analyses can provide accurate results with the minimum amount of relevant input from the user and provide the designer with a clearer understanding of the primary design variables.

Gravity
The force of gravity always tends to accelerate an object downward toward the center of the earth. The effects of this force on the trajectory of a bullet are well known and if considered alone result in very simple solution to the trajectory problem.

In a vacuum on a "flat" nonrotating earth, the horizontal component of the initial velocity of the bullet (V0 x cos ) remain unchanged. However, the vertical component (V0 x sin ) is continuously changed as a result of the acceleration due to gravity. This changing vertical velocity results in a parabolic trajectory.

Drag
In the vacuum trajectory situation, the solution is easily obtained because of the simplifications and assumptions made in formulating the problem.

When the effects of the atmosphere are considered, forces other than gravity act on the bullet, which cause it to deviate from a pure parabolic path.

This deviation results specifically from the dissipation of energy as the bullet makes contact with the atmosphere.

It has been found that the loss of energy of a projectile in flight is due to :

- Creation of air waves--The magnitude of this effect is influenced by the form (shape) of the bullet as well as by the cross-sectional area.

- Creation of suction and eddy currents--This phenomenon is chiefly the result of the form of the bullet and in gun projectiles specifically, the form of the after body.

- Formation of heat, thus energy is dissipated as a result of friction between the bullet and the air mass.

The combined effect of energy loss is a deceleration of the projectile during its time-of-flight. This deceleration acts to decrease the velocity of the bullet as it travels through the atmosphere. For a given projectile form, the retardation in velocity is directly proportional to the atmospheric density and to the velocity itself. This deceleration is called parasitic drag.

Parasitic drag always acts in a direction opposite to that of the motion of the bullet.

As a result, two fundamental interdependent actions take place while a bullet is in flight.

First, the force of drag at any point in the bullet's trajectory is a direct function of the velocity at that point. Because the drag force is continuously retarding the velocity of the bullet, the force of drag itself is continuously changing over the entire time-of-flight of the bullet, with drag dependent upon velocity and in turn velocity dependent upon drag.

Thus, the magnitude of both the velocity and the drag are changing with each dependent upon the other. Second, as the bullet travels the curved path of the trajectory, the angle is never constant, which results in the force of drag continuously changing direction throughout the entire flight of the bullet.

The force of drag constantly changes in magnitude as a function of velocity and in direction as a function of the direction of motion of the bullet.

The end result of drag is to slow the projectile over its entire trajectory, producing a range that is significantly shorter than that which is achievable in a vacuum.

While the vacuum trajectory is symmetric about the mid-range value, with the angle of fall equaling the angle of departure, the atmospheric trajectory is asymmetric. The summit of the trajectory is farther than mid-range, and the angle of fall is greater than the angle of departure.

Additionally, the atmospheric trajectory is dependent on projectile mass due to external forces--which also, unlike the vacuum case, causes the atmospheric trajectory's horizontal component of velocity to decrease along the flight path. This results in a computation of the necessary departure angle to affect maximum range, whereas in a vacuum the maximum range's departure angle is 45°.

In consideration of the elevation at which maximum range is achieved, there are two offsetting effects: the change in drag with projectile velocity and the atmospheric density. A projectile's velocity is greatest immediately upon leaving the gun, thus drag is greatest at this time also.

For small, lightweight projectiles, deceleration is greatest at the beginning of flight; therefore, to take advantage of improvement in horizontal range while the velocity is greatest, it is necessary to shoot at elevations less than 45°.

In large projectiles such as those employed on battleships it is best to employ elevations above 45° to enable the projectiles to quickly reach high altitudes where air density and thus drag are decreased. Range increases result from the approximation of vacuum trajectory conditions in the high-altitude phase of projectile flight.

Wind
The effects of wind can be divided into two components: range wind and cross wind. Range wind is that component of wind that acts in the plane of the line of fire. It serves to either retard or aid the projectile velocity, thus either increasing or decreasing range.

balengine_clip_image002.jpg

Cross wind acts in a plane perpendicular to the line of fire and serves to deflect the projectile either to the right or left of the line of fire.

Wind acts on the projectile throughout the time of flight; therefore, the total deviation in range and azimuth is a function of the time-of-flight.

Drift
Drift of a gun projectile is defined as the lateral displacement of the projectile from the original plane of fire due only to the effect of the rotation of the projectile. The principal cause of the drift lies in the gyroscopic properties of the spinning projectile. According to the laws of the gyroscope, the projectile seeks, first of all, to maintain its axis in the direction of its line of departure from the gun.

The center of gravity of the projectile, however, follows the curved path of the trajectory, and the instantaneous direction of its motion, at any point, is that of the tangent to the trajectory at that point. Therefore, the projectile's tendency to maintain the original direction of its axis soon results in leaving this axis pointed slightly above the tangent to the trajectory.

balengine_clip_image003.jpg

The force of the air resistance opposed to the flight of the projectile is then applied against its underside.

This force tends to push the nose of the projectile up, upending it. However, because of the gyroscopic stabilization, this force results in the nose of the projectile going to the right when viewed from above.

The movement of the nose of the projectile to the right then produces air resistance forces tending to rotate the projectile clockwise when viewed from above. However, again because of the gyroscopic stabilization, this force results in the nose of the projectile rotating down, which then tends to decrease the first upending force.

Thus, the projectile curves or drifts to the right as it goes toward the target. This effect can easily be shown with a gyroscope.

A more detailed analysis of gyroscopic stability would show that a projectile is statically unstable, but because of the gyroscopic effects, becomes dynamically stable. These effects actually cause the axis of the projectile to make oscillatory nutations about its flight path. Also the Magnus Effect, where a rotating body creates lift (figure 20-9) must be considered. The Magnus Effect is what causes a pitched baseball to curve.

Coriolis Effect
The preceding effects have all considered the earth to be flat and non-rotating.

The Coriolis effect is caused by the rotation of the earth.

The Coriolis effect is an inertial force described by the 19th-century French mathematician Gustave Gaspard Coriolis in 1835.

Coriolis showed that, if the ordinary Newtonian laws of motion of bodies are to be used in a rotating frame of reference, an inertial force ( acting to the right of the direction of body motion for counterclockwise rotation of the reference frame or to the left for clockwise rotation ) must be accounted for in the equations of motion.

balengine_clip_image004.jpg

The effect of the Coriolis force is an apparent deflection ( and it's also called a fictitious force ) of the path of an object that moves within a rotating coordinate system.

The moving object does not actually deviate from its path, but it appears to do so because of the motion of the coordinate system. While the effect of the earth's movement while a projectile is in flight is negligible for short and medium range shots, for longer range shots the Coriolis effect may cause the projectile to drift considerably from it's intended trajectory.

Actually this is not the case, and centripetal acceleration and Coriolis acceleration caused by the rotating earth must be considered. The centripetal acceleration of a point on the earth's surface will vary with its distance from the rotation axis. Thus, the difference in the velocities of the launcher and the target because of their different locations on the earth's surface must be considered.

The Coriolis acceleration force is created when a body or projectile moves along a radius from the axis of rotation of the earth ( or a component of it ).

This force tends to curve an object to the right in the Northern Hemisphere and to the left in the Southern Hemisphere. An observable example would be that the air moving outward from a high becomes clockwise wind and air moving into a low becomes counterclockwise wind.

In the Northern Hemisphere the deflection is to the right of the motion; in the Southern Hemisphere it is to the left. The Coriolis deflection of a body moving toward the north or south results from the fact that the earth's surface is rotating eastward at greater speed near the equator than near the poles, since a point on the equator traces out a larger circle per day than a point on another latitude nearer either pole.

A body traveling toward the equator with the slower rotational speed of higher latitudes tends to fall behind or veer to the west relative to the more rapidly rotating earth below it at lower latitudes.

Similarly, a body traveling toward either pole veers eastward because it retains the greater eastward rotational speed of the lower latitudes as it passes over the more slowly rotating earth closer to the pole. It is extremely important to account for the Coriolis effect when considering projectile trajectories, terrestrial wind systems, and ocean currents.
:ROFLMAO::ROFLMAO::ROFLMAO:
 
Holy cow Frank ! :cool:(y)

In my experience, it was on very rare occasions, after checking all my inputs that I had to depart from the standard DC 0.500 to get a match up, and mostly beyond transonic, provided the BC is right and the average MV is the result of a large set to get enough confidence. So, 95% of the time 0.500 worked for me. Another story is to have all the data tested and overly verified, including the Data Regression for Air Temp/ MV data, etc. If you take ELR seriously ( I don't compete but it's my passion) don't overlook doing your homework and the planets will align themselves up. CB is the software I use all the time and so far, the results were way over my expectations.
 
Holy cow Frank ! :cool:(y)

In my experience, it was on very rare occasions, after checking all my inputs that I had to depart from the standard DC 0.500 to get a match up, and mostly beyond transonic, provided the BC is right and the average MV is the result of a large set to get enough confidence. So, 95% of the time 0.500 worked for me. Another story is to have all the data tested and overly verified, including the Data Regression for Air Temp/ MV data, etc. If you take ELR seriously ( I don't compete but it's my passion) don't overlook doing your homework and the planets will align themselves up. CB is the software I use all the time and so far, the results were way over my expectations.
Thank you!

Now I just need to figured out how to keep the elevation from reverting to a random #
 
The Mathematical Predictive Model
The ballistics engine of ColdBore© is a propietary aeroballistics model based on a Kalman modified filter, which includes numerous proprietary extensions. The only resemblance to the method developed by the late Professor Arthur J. Pejsa ( who finished his research circa 1953 ) is just partially related to the way it handles the drag slope. This propietary method has no velocity or range restrictions, covering the full spectrum from supersonic, transonic and subsonic trajectories at extended ranges with muzzle velocities starting at any sonic boundary, giving a continuous, non-linear solution. This engine is the result of over 3 years of original research in the field of aeroballistics.

It has been proved time after time its superior predictive capability over the traditional "Point Mass" method that is used on almost any other program, that requires the use of the G7 drag function to yield reasonable solutions in and beyond the transonic range. Even using G7 the results may be not satisfactory, usually calling for the so called "custom drag curves" and the use of "truing" procedures. None of these shortcomings are needed in ColdBore© to produce outstanding predictions.

Many enhancements to the algorithms were developed, using both iterative and recursion approaches to solve the problem of computing downrange figures for velocity, time of flight and drop, the main variables of the solution from which others parameters are derived.

The model is an analytic, closed-form solution that doesn’t use tables generated for standard-shaped projectiles, a fact of paramount importance, since while it does not rely on the G1/G7 drag model used in most of the available programs, (some following the Mayeveski-Ingalls tables), the present method can use a readily available, G1/G7 ballistic coefficient as published, incorporating a custom drag function in order to model the specific projectile.

Since it effectively uses an analytic function ( of Mach number ) in order to match the drag curve of the specific bullet, it does not need to rely on other drag tables to approximate a better fit.

A ballistics software foundation rests in its ability to predict accurate trajectories, matching field results as the ultimate test.

Nearly all ballistic software take for granted that a specific drag function correctly describes the drag characteristics of a bullet as related to its ballistics coefficient, consequently, whether the bullet style is a flat-based, spitzer, a boat-tail, ULD, etc they take care of them to the same drag function as indicated by the published BC, usually the G1/G7 function.

The state of the art mathematical approach taken here, is quite different and a major improvement, of special application to the long range shooter.

Being practical, the use of the published BCs data as available, by almost every major bullet manufacturer is almost mandatory. However this program does not use it to calculate the changes to the drag function over the supersonic velocity range. In other words, this program ballistics engine uses a drag coefficient (DC) that affects the calculated rate of bullet deceleration.

Applying this DC, the resultant trajectory calculations are very accurate for that particular bullet because the drag function has effectively been tailored for that particular bullet.

balengine_clip_image001.jpg

As the drag coefficient can be modeled as a simple function of the Mach number, the particular functional form of the drag coefficient allows variations in the shape of the drag curve to be considered parametrically.

It's easily demonstrated that the projectile trajectory and velocity history can be characterized in terms of three parameters: the projectile’s muzzle velocity, a parameter related to the muzzle retardation, and a single parameter defining the shape of the drag curve.

Other approaches ( on the market ) base their predictions on trying to make a match of a specific bullet ( yours ) to like drag data which is available to examine the variation of the drag coefficient with Mach number in the standard axisymmetric ( having symmetry around an axis ) projectile shapes, that were tested in the early to mid-1900’s.

These resulting drag curves are referred to as the Ingalls, G1, G2, G5, G6, G7, and G8 drag curves.

Most bullet manufacturers assume and publish the G1 drag function shape. Examination of the form of a G1 standard-projectile, will to the obvious conclusion that it doesn't apply to the modern boattail bullet shapes in common use today. The G7 or G8 shape is much more appropriate but general availability of these ballistic coefficients is almost nonexistent.

Particularly, the G1, G5, and G7 curves model a specific bullet form, since they were deduced from, and it's common for some programs to adapt ( modify ) the G1 drag curve in an effort to fit the G5 to G7 bullet shapes, and in other words, these approaches are, at best an improvement to model modern bullet shapes in order to make predictions more accurate.

That's why the BC must be defined as a function of velocity. The present solution uses the actual drag, and not rely on an average fit to a non-representative standard or table-based drag function.

In short, what these models can, is to compute accurate trajectory values if range is moderate, up to approximately 600 yards, beyond that, you need a different way to model air drag and to account specifically for a drag curve that matches your bullet dynamics. This is what this method does precisely.

The method used here takes on a different approach, since if the shooter takes the necessary effort to actually measure the Drag Coefficient, the model will make an almost perfect fit, under different environmental conditions, thus yielding very precise downrage values for Velocity, Time of Flight and Drop.

The Drag Coefficient
The key element to compute accurate trajectories is the Drag curve, and of course its modeling via an appropriate function.

To accomplish this we need to know its initial values, its mean value and its maximum value, all across the supersonic, transonic and subsonic range or at any initial Velocity if not starting at typical rifle's velocities.

These aspects of the drag curve are modeled through a retardation factor <b>F</b>, or its inverse the deceleration A, slope factor ( the Drag Coefficient ) N, which is the rate of change of the retardation with range, and finally, the velocity at which the curve changes Vk, having reached its maximum value.

For the sake of simplicity and with the design criteria of being practical, the user only needs to deal with the slope factor, and that coupled with the G1-based BCs will yield very accurate results, so there is no need, at this level, to cope with velocities boundaries, since they are in fact modeled by the program itself, as well as the necessary different slope factors needed when the bullet's velocity goes through different sonic ranges.

Typically, this slope factor goes, in terms of bullet shape, from 0.1 ( flat-nose ) to 0.9 ( very-low-drag ), and a default value of 0.5 can be used for most modern spitzer-type bullets with confidence, and if not possible to obtain it from actual measurements, its value can be determined from bullet's shape.

However for maximum accuracy, especially at long range, its value should be determined by the method used here, which involves the measurement of four velocities ( loss ), that evaluate retardation <b>F, ( Fa and Fb )</b> at two known apart distances.

Do not confuse BCs with this drag value, since two bullets with the same BC may have different deceleration ratios, due to shape, materials, construction, barrel's twist rate, etc.

WARNING: It's important to remark, that this program does not favor any other method to evaluate it, especially those based on measuring Drop at a certain range, because there are so many errors that can be introduced it doesn't lend itself as being very viable. Its determination is totally affected by shooter/gun errors and in fact does not represent the actual problem of velocity, which can be measured very precisely by means which are both available and affordable.

Accuracy
One of the most frequently asked questions is "how accurate are the calculated downrange values?"

As with any software with a good mathematical model, the accuracy of the input values determines the accuracy of the output values.

In exterior ballistics, elements such as shape, caliber, weight, initial velocities, rotation, air resistance, and gravity help determine the path of a projectile from the time it leaves the gun until it reaches the target.

While the accuracy of the mathematical model is superior, bare in mind that actual field results can differ due to the shooter's ability, the gun, the ammo and a myriad of other factors that affect a bullet's flight, making necessary an inordinate amount of time and equipment to collect, thus rendering impossible a practical solution, especially at longer ranges.

At the same time, there are too many variables that magnify their effect at such ranges, not to mention the shooter's ability to cope with such a challenge.

On the other hand, as any shooter ( especially those involved in long range engagements ) know, some effects like wind are difficult to estimate, or the individual characteristics of a rifle for example, or plain shooter errors, will make differences between actual impact location versus predicted ones more evident. Unfortunately there is no practical way to cope or account for these changes, and eventually nothing replaces carefully collected field data.

The most common ballistic error sources are variations of the muzzle velocity, variations of the angle of departure and the azimuth, variations of the bullet drag, variations of wind speed and wind direction, variations of the lift force, bullet static and dynamic unbalances, etc and from the shooter's side we can count on aiming errors, sighting error, canting of the gun, etc.

It's important to note that predicting accurate downrange values past the 3000 yards/meters limit, is almost impossible without taking special, ad-hoc efforts well beyond the scope of most shooters. A good example as well as a main source for errors are the published BC values that we must rely on and take for granted.

So, if the input values are as accurate as can be practically determined, then there won't be any statistically significant difference between the calculated down range values and actual measured values, within the range of values allowed for both input data as well as it's ouput.

If you know anything about statistics, then you know that any given shot may not match the calculated value, but the average of a group of shots comes very close, and the more shots in the group, the closer the true average is to the calculated value. The difference between individual shots and the group's average is called Variability.

However, it should be recognized, , that neither aiming errors nor the ballistic dispersion can ever be reduced to zero, and therefore whether or not a target will be hit by any particular shot is a question of probabilities, depending on the size of the target, the proficiency of the rifleman, the accuracy of the information about the conditions under which the shot will be made, and the ballistic dispersion of the gun/ammunition system.

The gun enthusiast should learn by experience and recognize realistically the outer limits of the ranges at which various types of targets can be engaged with a reasonable probability of success.

The Basics
Exterior ballistics refers to the trajectory of a bullet once it has left the muzzle of a firearm.

Exterior ballistics is a generic term used to describe a number of natural phenomena that tend to cause a bullet in flight to change direction or velocity or both. These phenomena are gravity, drag, wind, drift (when considering spin-stabilized bullets) and Coriolis effect.

The computation of relative-motion effect produces the actual point of collision between the bullet and the target. The computation of the effects of ballistics produces aiming corrections as a result of the curvature of the bullet's flight path.

These corrections don't change the final collision point, but cause the trajectory of the bullet to intersect the flight path of the target. The ultimate aim of ballistic computation, then, is to produce angular corrections to the azimuth and elevation values derived from the relative-motion results.

Inherent in these calculations is the computation of time-of-flight of the bullet, which in turn is used to facilitate the relative-motion computation.

Ideally, it is desired to produce a procedure that totally describes the complex trajectory of a bullet. When provided the coordinates of the future target position as input data, this procedure would produce angles of launch and bullet time-of-flight as output.

It must be emphasized here that the central problem of bullet delivery is the solution of the intersection of two curves, one described by the motion of the target and the other described by the motion of the bullet.

It's knowledge can be used to extend the effective range of a hunting rifle, help set sights for different locations and weather conditions, select calibers and ammunition or even help select reload components, all of this based on sound mathematical principles.

Background
The analysis and prediction of the trajectory of projectiles has been a subject investigated for many centuries and is still a topic of interest today.

The interest and advancement of the problem has come from two fields: mathematics and physics. As a mathematical problem, the focus has been on the methods for solution of the governing equations.

Some of the most noted mathematicians and physicists of the past several centuries, such as Galileo, Bernoulli, and Euler, have investigated the mathematical solution of this problem and have obtained technical advances important for trajectory prediction.

To accurately determine the trajectory of a projectile, one must also properly account for the physical effects such as gravity and the air resistance or drag of the projectile. In additional to his laws of motion, Newton has also been credited for the development of the quadratic law of resistance characterizing the aerodynamic drag of a body.

Further advances have shown that more sophisticated characterization of the drag is required to predict the trajectory across the complete flight regime of many projectiles.

Over a century ago, Mayevski found that it was possible to express the drag of a projectile as proportional to a power of the velocity within restricted velocity regimes. This has been described as the Mayevski Law of Resistance. Piecing together the drag in adjacent velocity regimes using this approach allowed the drag to be characterized over the complete flight regime. Mayevski’s advance led to further developments in trajectory prediction methods.

One of the more famous methods is the Siacci method. The Siacci method was widely used to predict the flat-fire trajectories for decades after its initial development. The method still has some adherents in the sporting and ammunition community.

With the advent of the computer, the Siacci method has been replaced by more modern numerical methods.

These methods allow rapid and accurate computation of the projectile’s trajectory provided the physical characteristics of the projectile (such as the drag) and the atmosphere are appropriately modeled. Modern aerodynamic analysis and trajectory programs provide an excellent means of accurately determining the flight behavior of specific designs.

The increased sophistication of trajectory prediction methods has some unfortunate consequences. The user must often provide an array of details that may or may not be relevant to the answer that is being sought. Additionally, these methods often obscure critical insights into the relationship between important parameters that produce the physical behavior of interest.

For example, there are occasions where a ballistician would like to be able to predict aspects of the flight trajectory without completely defining the geometry or aerodynamic characteristics of a projectile, such as in preliminary design or experimental testing.

In these cases, simplified analyses can provide accurate results with the minimum amount of relevant input from the user and provide the designer with a clearer understanding of the primary design variables.

Gravity
The force of gravity always tends to accelerate an object downward toward the center of the earth. The effects of this force on the trajectory of a bullet are well known and if considered alone result in very simple solution to the trajectory problem.

In a vacuum on a "flat" nonrotating earth, the horizontal component of the initial velocity of the bullet (V0 x cos ) remain unchanged. However, the vertical component (V0 x sin ) is continuously changed as a result of the acceleration due to gravity. This changing vertical velocity results in a parabolic trajectory.

Drag
In the vacuum trajectory situation, the solution is easily obtained because of the simplifications and assumptions made in formulating the problem.

When the effects of the atmosphere are considered, forces other than gravity act on the bullet, which cause it to deviate from a pure parabolic path.

This deviation results specifically from the dissipation of energy as the bullet makes contact with the atmosphere.

It has been found that the loss of energy of a projectile in flight is due to :

- Creation of air waves--The magnitude of this effect is influenced by the form (shape) of the bullet as well as by the cross-sectional area.

- Creation of suction and eddy currents--This phenomenon is chiefly the result of the form of the bullet and in gun projectiles specifically, the form of the after body.

- Formation of heat, thus energy is dissipated as a result of friction between the bullet and the air mass.

The combined effect of energy loss is a deceleration of the projectile during its time-of-flight. This deceleration acts to decrease the velocity of the bullet as it travels through the atmosphere. For a given projectile form, the retardation in velocity is directly proportional to the atmospheric density and to the velocity itself. This deceleration is called parasitic drag.

Parasitic drag always acts in a direction opposite to that of the motion of the bullet.

As a result, two fundamental interdependent actions take place while a bullet is in flight.

First, the force of drag at any point in the bullet's trajectory is a direct function of the velocity at that point. Because the drag force is continuously retarding the velocity of the bullet, the force of drag itself is continuously changing over the entire time-of-flight of the bullet, with drag dependent upon velocity and in turn velocity dependent upon drag.

Thus, the magnitude of both the velocity and the drag are changing with each dependent upon the other. Second, as the bullet travels the curved path of the trajectory, the angle is never constant, which results in the force of drag continuously changing direction throughout the entire flight of the bullet.

The force of drag constantly changes in magnitude as a function of velocity and in direction as a function of the direction of motion of the bullet.

The end result of drag is to slow the projectile over its entire trajectory, producing a range that is significantly shorter than that which is achievable in a vacuum.

While the vacuum trajectory is symmetric about the mid-range value, with the angle of fall equaling the angle of departure, the atmospheric trajectory is asymmetric. The summit of the trajectory is farther than mid-range, and the angle of fall is greater than the angle of departure.

Additionally, the atmospheric trajectory is dependent on projectile mass due to external forces--which also, unlike the vacuum case, causes the atmospheric trajectory's horizontal component of velocity to decrease along the flight path. This results in a computation of the necessary departure angle to affect maximum range, whereas in a vacuum the maximum range's departure angle is 45°.

In consideration of the elevation at which maximum range is achieved, there are two offsetting effects: the change in drag with projectile velocity and the atmospheric density. A projectile's velocity is greatest immediately upon leaving the gun, thus drag is greatest at this time also.

For small, lightweight projectiles, deceleration is greatest at the beginning of flight; therefore, to take advantage of improvement in horizontal range while the velocity is greatest, it is necessary to shoot at elevations less than 45°.

In large projectiles such as those employed on battleships it is best to employ elevations above 45° to enable the projectiles to quickly reach high altitudes where air density and thus drag are decreased. Range increases result from the approximation of vacuum trajectory conditions in the high-altitude phase of projectile flight.

Wind
The effects of wind can be divided into two components: range wind and cross wind. Range wind is that component of wind that acts in the plane of the line of fire. It serves to either retard or aid the projectile velocity, thus either increasing or decreasing range.

balengine_clip_image002.jpg

Cross wind acts in a plane perpendicular to the line of fire and serves to deflect the projectile either to the right or left of the line of fire.

Wind acts on the projectile throughout the time of flight; therefore, the total deviation in range and azimuth is a function of the time-of-flight.

Drift
Drift of a gun projectile is defined as the lateral displacement of the projectile from the original plane of fire due only to the effect of the rotation of the projectile. The principal cause of the drift lies in the gyroscopic properties of the spinning projectile. According to the laws of the gyroscope, the projectile seeks, first of all, to maintain its axis in the direction of its line of departure from the gun.

The center of gravity of the projectile, however, follows the curved path of the trajectory, and the instantaneous direction of its motion, at any point, is that of the tangent to the trajectory at that point. Therefore, the projectile's tendency to maintain the original direction of its axis soon results in leaving this axis pointed slightly above the tangent to the trajectory.

balengine_clip_image003.jpg

The force of the air resistance opposed to the flight of the projectile is then applied against its underside.

This force tends to push the nose of the projectile up, upending it. However, because of the gyroscopic stabilization, this force results in the nose of the projectile going to the right when viewed from above.

The movement of the nose of the projectile to the right then produces air resistance forces tending to rotate the projectile clockwise when viewed from above. However, again because of the gyroscopic stabilization, this force results in the nose of the projectile rotating down, which then tends to decrease the first upending force.

Thus, the projectile curves or drifts to the right as it goes toward the target. This effect can easily be shown with a gyroscope.

A more detailed analysis of gyroscopic stability would show that a projectile is statically unstable, but because of the gyroscopic effects, becomes dynamically stable. These effects actually cause the axis of the projectile to make oscillatory nutations about its flight path. Also the Magnus Effect, where a rotating body creates lift (figure 20-9) must be considered. The Magnus Effect is what causes a pitched baseball to curve.

Coriolis Effect
The preceding effects have all considered the earth to be flat and non-rotating.

The Coriolis effect is caused by the rotation of the earth.

The Coriolis effect is an inertial force described by the 19th-century French mathematician Gustave Gaspard Coriolis in 1835.

Coriolis showed that, if the ordinary Newtonian laws of motion of bodies are to be used in a rotating frame of reference, an inertial force ( acting to the right of the direction of body motion for counterclockwise rotation of the reference frame or to the left for clockwise rotation ) must be accounted for in the equations of motion.

balengine_clip_image004.jpg

The effect of the Coriolis force is an apparent deflection ( and it's also called a fictitious force ) of the path of an object that moves within a rotating coordinate system.

The moving object does not actually deviate from its path, but it appears to do so because of the motion of the coordinate system. While the effect of the earth's movement while a projectile is in flight is negligible for short and medium range shots, for longer range shots the Coriolis effect may cause the projectile to drift considerably from it's intended trajectory.

Actually this is not the case, and centripetal acceleration and Coriolis acceleration caused by the rotating earth must be considered. The centripetal acceleration of a point on the earth's surface will vary with its distance from the rotation axis. Thus, the difference in the velocities of the launcher and the target because of their different locations on the earth's surface must be considered.

The Coriolis acceleration force is created when a body or projectile moves along a radius from the axis of rotation of the earth ( or a component of it ).

This force tends to curve an object to the right in the Northern Hemisphere and to the left in the Southern Hemisphere. An observable example would be that the air moving outward from a high becomes clockwise wind and air moving into a low becomes counterclockwise wind.

In the Northern Hemisphere the deflection is to the right of the motion; in the Southern Hemisphere it is to the left. The Coriolis deflection of a body moving toward the north or south results from the fact that the earth's surface is rotating eastward at greater speed near the equator than near the poles, since a point on the equator traces out a larger circle per day than a point on another latitude nearer either pole.

A body traveling toward the equator with the slower rotational speed of higher latitudes tends to fall behind or veer to the west relative to the more rapidly rotating earth below it at lower latitudes.

Similarly, a body traveling toward either pole veers eastward because it retains the greater eastward rotational speed of the lower latitudes as it passes over the more slowly rotating earth closer to the pole. It is extremely important to account for the Coriolis effect when considering projectile trajectories, terrestrial wind systems, and ocean currents.

Lowlight,
Thanks for the schooling in exterior ballistics! Is there a test I can take to get a certificate?
 
  • Haha
Reactions: gozoogle
@Hundley thank you for posting on this thread, a couple of questions. First what are your plans and timeline for Android? Second in some solvers I see a field for "Bullet Length" I assume this is important to the math you provide?

I am having a hard time finding this specification for factory ammo, I am using 6.5CM Prime 130 Match. I could rip one apart I suppose....

Hi @seansmd, I don't have anything to report about Android at the moment. Software is time-consuming and expensive, so the naturally owner has to balance the project among their other priorities.

To answer your question about bullet length, it does have an effect on the calculated spin drift. The effect is relatively minor though... if you want the absolute best accuracy, try to get the info from the manufacturer or rip one of your bullets apart. If neither of those are options, then you can just estimate and the results will be pretty darn close.
 
  • Like
Reactions: seansmd
Just an FYI,

JBM has a Bullet Length Library but I use MidwayUSA a lot for this, as an example, Prime had the different BCs on the box but no length, however,

Technical Information
  • Caliber: 264, 6.5mm
  • Bullet Diameter: .264"
  • Bullet Weight: 130 Grains
  • Bullet Length: 1.38""
  • Bullet Style: Jacketed Hollow Point
Link to Midway

if you go to the specs of the bullet it's there.
 
  • Like
Reactions: DJL2 and seansmd
I've never gotten Strelok to line up after changing atmospherics. Can make it work one place, change location and DA, shoot and it's way off.

AB has always been spot on.

I can’t speak for other solvers but AB has CDM; which also factor in the effect of stability on drag. That matters more to the ELR/ULR shooter. AB is pioneering ballistics at and beyond the transonic zone which is where the solvers output really matters. Everything within the supersonic range is generally the same amongst solvers.
 
Last edited:
Hi,

How can AB be pioneering ballistics at and beyond transonic zone when FFS and CB have been doing just that very thing for over a decade?

Shit, the ABC back in late 90s was first program to utilize Doppler data in a consumer available device and it worked just fine at transonic zone....projectiles that transitioned were few and far in between though.

Sincerely,
Theis
 
Last edited:
Hi,

How can AB be pioneering ballistics at and beyond transonic zone when FFS and CB have been doing just that very thing for over a decade?

Shit, the ABC back in late 90s was first program to utilize Doppler data in a consumer available device and it worked just fine at transonic zone....projectiles that transitioned were few and far in between though.

Sincerely,
Theis
(y)(y)

On the other hand, I don't see how AB, being a 3DOF solver can estimate stability other than the usual stuff. Doppler curves have been around for over 7 years maybe more, JBM, Lapua, Quickload, Nimoh all 3DOF solvers have had such capability long before AB came up with their CDM. I know, marketing can spin a better story than history itself.o_O
 
  • Like
Reactions: Bender
Let me rant for a second. I said I can’t speak for other solvers. But let’s ignore that and talk about some deception.

I’ve been reading AB books lately and there’s a prevailing theme amongst two of the books I’ve completed so far: As of this writing or to my knowledge, AB’s engine is the only software accounting for this. Or AB engine is the only software back by a ballistician. Forget the context. Every second or third chapter, the theme is we’re the only ones accounting for this. From my perspective, to my knowledge, it all sounded legit.

Looking back, the books while providing good information, was more so marketing for AB & Berger. I’m kind of pissed about it.


And how the hell is it 3DOF when they spend countless chapters discussing the effects of 6DOF. Surely there’s a mistake.
 
Last edited:
  • Like
Reactions: Bender