Detailed description of the problem In my 5th edition game ( <a href="https://app.roll20.net/campaigns/details/7608577/noobs-mcgees-deadly-one-shot-adventures" rel="nofollow">https://app.roll20.net/campaigns/details/7608577/noobs-mcgees-deadly-one-shot-adventures</a> ), we use the standard 5E character sheet. I am the DM, and I have lost the ability to use the level 1 Charactermancer. At least one one of my players (perhaps more) have also lost this same functionality. I tested this issue with add-ons enabled and disabled; the results were the same. I also tested this issue while using in-window character sheet and with the popped out character sheet; again, the results were the same. Minimum number of steps to reproduce the problem Create a new character and complete the Level 1 Charactermancer. (Alternatively, use the character Rylai Clone for the character sheet I used while troubleshooting.) Press the Apply Changes button. Wait forever while the Charactermancer never applies the changes. Instead, the character sheet displays "Building your character..." and the progress bar remains at 0% even after waiting a substantial amount of time. When the character sheet is closed and re-opened from the campaign journal, it will display the Review page of the Level 1 Charactermancer. Repeated attempts to Apply Changes yield the same results as before. Description of setup Chrome 88.0.4324.150 I use Beyond 20 and Ad Blocker Plus (ABP). Win 10 Pro, 64-bit. Console Log Some messages have been moved to the Issues panel. (index):5 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' 'sha256-dm6tOb8rwEmENe5+ec26sQvlH6Xd1CBZ7IvtZ4kJ1og=' 'sha256-jlxVUPsj/qdPM120UwbjpC4Tw7dq+obb7SYUV+lSfrI=' 'nonce-RXOgNsqya6IamH56' <a href="http://cdn.inspectlet.com" rel="nofollow">http://cdn.inspectlet.com</a> https://*.googlesyndication.com https://*.doubleclick.net <a href="https://partner.googleadservices.com" rel="nofollow">https://partner.googleadservices.com</a> <a href="https://www.googletagservices.com" rel="nofollow">https://www.googletagservices.com</a> <a href="https://ssl.google-analytics.com" rel="nofollow">https://ssl.google-analytics.com</a> <a href="https://www.google-analytics.com" rel="nofollow">https://www.google-analytics.com</a> <a href="https://ajax.googleapis.com" rel="nofollow">https://ajax.googleapis.com</a> <a href="http://ajax.googleapis.com" rel="nofollow">http://ajax.googleapis.com</a> <a href="https://d3clqjduf2gvxg.cloudfront.net" rel="nofollow">https://d3clqjduf2gvxg.cloudfront.net</a> <a href="https://cdn.firebase.com" rel="nofollow">https://cdn.firebase.com</a> https://*.firebaseio.com https://*.tokbox.com https://*.opentok.com <a href="http://static.opentok.com" rel="nofollow">http://static.opentok.com</a> <a href="http://www.google-analytics.com" rel="nofollow">http://www.google-analytics.com</a> <a href="http://cdn.crowdin.com" rel="nofollow">http://cdn.crowdin.com</a> <a href="https://crowdin.com" rel="nofollow">https://crowdin.com</a> <a href="http://stun.l.google.com" rel="nofollow">http://stun.l.google.com</a> *.sentry-cdn.com". Either the 'unsafe-inline' keyword, a hash ('sha256-kH8OfsIWm/j2az5XQDZmvxH0faTd3NBwLZS7nTM5Oy4='), or a nonce ('nonce-...') is required to enable inline execution. (index):20 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' 'sha256-dm6tOb8rwEmENe5+ec26sQvlH6Xd1CBZ7IvtZ4kJ1og=' 'sha256-jlxVUPsj/qdPM120UwbjpC4Tw7dq+obb7SYUV+lSfrI=' 'nonce-RXOgNsqya6IamH56' <a href="http://cdn.inspectlet.com" rel="nofollow">http://cdn.inspectlet.com</a> https://*.googlesyndication.com https://*.doubleclick.net <a href="https://partner.googleadservices.com" rel="nofollow">https://partner.googleadservices.com</a> <a href="https://www.googletagservices.com" rel="nofollow">https://www.googletagservices.com</a> <a href="https://ssl.google-analytics.com" rel="nofollow">https://ssl.google-analytics.com</a> <a href="https://www.google-analytics.com" rel="nofollow">https://www.google-analytics.com</a> <a href="https://ajax.googleapis.com" rel="nofollow">https://ajax.googleapis.com</a> <a href="http://ajax.googleapis.com" rel="nofollow">http://ajax.googleapis.com</a> <a href="https://d3clqjduf2gvxg.cloudfront.net" rel="nofollow">https://d3clqjduf2gvxg.cloudfront.net</a> <a href="https://cdn.firebase.com" rel="nofollow">https://cdn.firebase.com</a> https://*.firebaseio.com https://*.tokbox.com https://*.opentok.com <a href="http://static.opentok.com" rel="nofollow">http://static.opentok.com</a> <a href="http://www.google-analytics.com" rel="nofollow">http://www.google-analytics.com</a> <a href="http://cdn.crowdin.com" rel="nofollow">http://cdn.crowdin.com</a> <a href="https://crowdin.com" rel="nofollow">https://crowdin.com</a> <a href="http://stun.l.google.com" rel="nofollow">http://stun.l.google.com</a> *.sentry-cdn.com". Either the 'unsafe-inline' keyword, a hash ('sha256-pTNkp50U6tVf8FuQzTMh762+Nza6SP/j648+XWvdL+s='), or a nonce ('nonce-...') is required to enable inline execution. jquery.migrate.js:20 JQMIGRATE: Logging is active app.roll20.net/:15 CAMPAIGN ID: 7608577 VM2166:275 [Deprecation] RTP data channels is deprecated and will be removed in M90, around April 2021. Please use standard SCTP data channels instead. See <a href="https://www.chromestatus.com/features/6485681910054912" rel="nofollow">https://www.chromestatus.com/features/6485681910054912</a> for more details. WrappedRTCPeerConnection @ VM2166:275 (anonymous) @ app.js?1612553985:278 8../adapter @ app.js?1612553985:278 o @ app.js?1612553985:278 (anonymous) @ app.js?1612553985:278 7../util @ app.js?1612553985:278 o @ app.js?1612553985:278 (anonymous) @ app.js?1612553985:278 3../adapter @ app.js?1612553985:278 o @ app.js?1612553985:278 e @ app.js?1612553985:278 (anonymous) @ app.js?1612553985:278 app.js?1612553985:587 70 app.js?1612553985:587 Custom Sheet Translation app.js?1612553985:592 TOUCH SUPPORTED: false app.js?1612553985:592 USING WEBGL ACCELERATION... app.js?1612553985:592 WEBGL STARTUP SUCCESS app.js?1612553985:609 Loading Custom character sheet. app.js?1612553985:609 Including compendium template css. tutorial_tips.js:7 tuts loaded (index):1 [DOM] Found 2 elements with non-unique id #0: (More info: <a href="https://goo.gl/9p2vKq" rel="nofollow">https://goo.gl/9p2vKq</a> ) <select aria-selected="true" class="chosen filter-search_filter-value" data-filter-num="0" data-match-type="Any" id="0" multiple name="expansion">…</select> <select aria-selected="true" class="chosen filter-search_filter-value" data-filter-num="0" data-match-type="Any" id="0" multiple name="expansion">…</select> (index):1 [DOM] Found 2 elements with non-unique id #1: (More info: <a href="https://goo.gl/9p2vKq" rel="nofollow">https://goo.gl/9p2vKq</a> ) <input class="filter-search_filter-value filtername" data-filter-num="name" data-match-type="Any" id="1" name="Name" type="text" value> <input class="filter-search_filter-value filtername" data-filter-num="name" data-match-type="Any" id="1" name="Name" type="text" value> (index):1 [DOM] Found 2 elements with non-unique id #2: (More info: <a href="https://goo.gl/9p2vKq" rel="nofollow">https://goo.gl/9p2vKq</a> ) <select name="Level[]" id="2" class="chosen filter-search_filter-value multiselect" multiple="multiple" aria-selected="true" data-filter-num="2" data-match-type="Any" placeholder="Select Some Options">…</select> <select name="Alignment[]" id="2" class="chosen filter-search_filter-value multiselect" multiple="multiple" aria-selected="true" data-filter-num="2" data-match-type="Any" placeholder="Select Some Options">…</select> (index):1 [DOM] Found 2 elements with non-unique id #3: (More info: <a href="https://goo.gl/9p2vKq" rel="nofollow">https://goo.gl/9p2vKq</a> ) <select name="Classes[]" id="3" class="chosen filter-search_filter-value multiselect" multiple="multiple" aria-selected="true" data-filter-num="3" data-match-type="Any" placeholder="Select Some Options">…</select> <input class="filter-search_filter-value" data-filter-num="3" data-match-type="Any" id="3" name="Speed" type="text" value> (index):1 [DOM] Found 2 elements with non-unique id #4: (More info: <a href="https://goo.gl/9p2vKq" rel="nofollow">https://goo.gl/9p2vKq</a> ) <select name="School[]" id="4" class="chosen filter-search_filter-value multiselect" multiple="multiple" aria-selected="true" data-filter-num="4" data-match-type="Any" placeholder="Select Some Options">…</select> <select name="Type[]" id="4" class="chosen filter-search_filter-value multiselect" multiple="multiple" aria-selected="true" data-filter-num="4" data-match-type="Any" placeholder="Select Some Options">…</select> (index):1 [DOM] Found 2 elements with non-unique id #7: (More info: <a href="https://goo.gl/9p2vKq" rel="nofollow">https://goo.gl/9p2vKq</a> ) <select name="Casting Time[]" id="7" class="chosen filter-search_filter-value multiselect" multiple="multiple" aria-selected="true" data-filter-num="7" data-match-type="Any" placeholder="Select Some Options">…</select> <select name="Languages[]" id="7" class="chosen filter-search_filter-value multiselect" multiple="multiple" aria-selected="true" data-filter-num="7" data-match-type="Any" placeholder="Select Some Options">…</select> sheetsandboxworker.js?1612556394121:682 Starting up WEB WORKER roll20.js:2990 Beyond20: Roll20 module loaded. (index):424 Refused to load the script ' <a href="https://js-agent.newrelic.com/nr-1167.min.js" rel="nofollow">https://js-agent.newrelic.com/nr-1167.min.js</a> ' because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' 'sha256-dm6tOb8rwEmENe5+ec26sQvlH6Xd1CBZ7IvtZ4kJ1og=' 'sha256-jlxVUPsj/qdPM120UwbjpC4Tw7dq+obb7SYUV+lSfrI=' 'nonce-RXOgNsqya6IamH56' <a href="http://cdn.inspectlet.com" rel="nofollow">http://cdn.inspectlet.com</a> https://*.googlesyndication.com https://*.doubleclick.net <a href="https://partner.googleadservices.com" rel="nofollow">https://partner.googleadservices.com</a> <a href="https://www.googletagservices.com" rel="nofollow">https://www.googletagservices.com</a> <a href="https://ssl.google-analytics.com" rel="nofollow">https://ssl.google-analytics.com</a> <a href="https://www.google-analytics.com" rel="nofollow">https://www.google-analytics.com</a> <a href="https://ajax.googleapis.com" rel="nofollow">https://ajax.googleapis.com</a> <a href="http://ajax.googleapis.com" rel="nofollow">http://ajax.googleapis.com</a> <a href="https://d3clqjduf2gvxg.cloudfront.net" rel="nofollow">https://d3clqjduf2gvxg.cloudfront.net</a> <a href="https://cdn.firebase.com" rel="nofollow">https://cdn.firebase.com</a> https://*.firebaseio.com https://*.tokbox.com https://*.opentok.com <a href="http://static.opentok.com" rel="nofollow">http://static.opentok.com</a> <a href="http://www.google-analytics.com" rel="nofollow">http://www.google-analytics.com</a> <a href="http://cdn.crowdin.com" rel="nofollow">http://cdn.crowdin.com</a> <a href="https://crowdin.com" rel="nofollow">https://crowdin.com</a> <a href="http://stun.l.google.com" rel="nofollow">http://stun.l.google.com</a> *.sentry-cdn.com". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback. r @ (index):424 app.js?1612553985:601 Final page load. app.js?1612553985:599 Auth'ed. app.js?1612553985:599 Go post auth! app.js?1612553985:599 initial setup app.js?1612553985:599 joining game... app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:596 Full load page! app.js?1612553985:599 We have 29 pages app.js?1612553985:597 Player -M8Y1E_pxoNrlrIMPuTi is offline... app.js?1612553985:597 Player -MEoUrFAqbLg32GkCTK4 is offline... app.js?1612553985:597 Player -MEpMhkK7h_ATvNivNFA is offline... app.js?1612553985:597 Player -MNkdURh3nOcDGZoIsTh is offline... app.js?1612553985:597 Player -MNkeMVN8JdtBfsoHABn is offline... app.js?1612553985:597 Player -MNkfx1tWZ6dqh5D7jZK is offline... app.js?1612553985:597 Player -MNkicy2uNVIZtVBpVCk is offline... app.js?1612553985:597 Player -MNkimQqMXbSb-bZzBuA is offline... app.js?1612553985:597 Player -MNkoIPkQjSqS93uoeG7 is offline... app.js?1612553985:597 Player -MNkovDWHplkZsT-o-YQ is offline... app.js?1612553985:597 Player -MNl2TJELTCF4SyLwgWR is offline... app.js?1612553985:597 Player -MQ-KmGmNiNVdsR8AcwK is offline... app.js?1612553985:599 Deferred finish joining... app.js?1612553985:587 Firebase Online s3.amazonaws.com/files.d20.io/images/157105489/AweCTdNiLjpgvW-SRl18iw/thumb.png?15972539275:1 Failed to load resource: the server responded with a status of 403 (Forbidden) app.js?1612553985:586 Error loading graphic, probably due to CORS. Trying once without CORS for <a href="https://s3.amazonaws.com/files.d20.io/images/157105489/AweCTdNiLjpgvW-SRl18iw/thumb.png?1597253927" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/157105489/AweCTdNiLjpgvW-SRl18iw/thumb.png?1597253927</a> (anonymous) @ app.js?1612553985:586 nrWrapper @ (index):424 mini.png:1 Failed to load resource: the server responded with a status of 403 (Forbidden) mini.png:1 Failed to load resource: the server responded with a status of 403 (Forbidden) mini.png:1 Failed to load resource: the server responded with a status of 403 (Forbidden) s3.amazonaws.com/files.d20.io/images/157105489/AweCTdNiLjpgvW-SRl18iw/thumb.png?15972539271612556399142:1 Failed to load resource: the server responded with a status of 403 (Forbidden) app.js?1612553985:586 Second load attempt failed for <a href="https://s3.amazonaws.com/files.d20.io/images/157105489/AweCTdNiLjpgvW-SRl18iw/thumb.png?15972539271612556399142" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/157105489/AweCTdNiLjpgvW-SRl18iw/thumb.png?15972539271612556399142</a> s @ app.js?1612553985:586 nrWrapper @ (index):424 dnd5e.js:245 --------------------------------------------- dnd5e.js:248 INSTALLING UPDATES: dnd5e.js:258 D&D 5th Edition by Roll20 Version 4.21 dnd5e.js:259 --------------------------------------------- jquery.migrate.js:39 JQMIGRATE: $(html) HTML strings must start with '<' character migrateWarn @ jquery.migrate.js:39 jquery.migrate.js:41 console.trace migrateWarn @ jquery.migrate.js:41 sheetsandboxworker.js?1612556394121:733 TypeError: asiKey.toLowerCase is not a function at eval (dnd5e.js:10815) at Array.forEach (<anonymous>) at Array.eval (dnd5e.js:10805) at self.trigger (sheetsandboxworker.js?1612556394121:110) at messageHandler (sheetsandboxworker.js?1612556394121:702) sheetsandboxworker.js?1612556394121:734 TypeError: asiKey.toLowerCase is not a function at eval (dnd5e.js:10815) at Array.forEach (<anonymous>) at Array.eval (dnd5e.js:10805) at self.trigger (sheetsandboxworker.js?1612556394121:110) at messageHandler (sheetsandboxworker.js?1612556394121:702) DevTools failed to load SourceMap: Could not load content for <a href="https://app.roll20.net/js/d20/underscore-min.map" rel="nofollow">https://app.roll20.net/js/d20/underscore-min.map</a> : Fetch through target failed: Target not supported; Fallback: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE Supplemental Information Screen Grab when I try to Apply Changes using the Level 1 Charactermancer.