Use the for
statement to call CopyN(io.Discard, r.Body, 10)
in a loop and sleep after each chunk.
for {
n, err := io.CopyN(io.Discard, r.Body, 10)
if err == io.EOF {
// Body successfully discarded.
break
} else if err != nil {
log.Fatal(err)
}
time.Sleep(time.Second)
}
Try --ssl-no-revoke
option with curl like
curl --ssl-no-revoke https://maintenanceplus.nl
tsconfig.ts is No modifications are needed.
I merely added the comments for the "output" directory.
execute npm i prisma @prisma/client
npx npx prisma generate
is will be OK
surl & furl in payu request should be an api endpoint. Payu sends the status of the transaction to your api endpoint. once you receive the request from payu, process it, save it to your database and return a redirect request(send transaction id etc) to your client app for further processing.
i have an asp.net webapi and angular app and this is how i was able to handle redirection from payu.
Right after commenting I actually figured this out. For people using the Azure Devops Xcode pipeline task (ver. 5.*), check your 'Advanced' settings
Once I unchecked the "Use xcpretty" option I could see all the build and build phase script output that I'm used to seeing locally. This includes the downstream CompileC failure errors that I was missing too
text tags: missing script build phase print output logs Xcode azure
Another possibility for those struggling with aws grok - the log files I was trying to crawl were in uft-16 LE BOM (just what the 3rd party system was creating) and grok would not work - changed the log files to utf-8 and it worked
Sorry about the late answer. Yes it can be done.
AABB-AABB intersections can be done by tracing a ray segment along each edge of each box against the other box (TLAS intersection testing).
Triangle-triangle intersection testing can be done by constructing 3 fake triangles orthogonal to each original triangle along each edge of the triangle (to catch the special case of the original triangles being coplanar) and then tracing a ray segment along each edge of each original triangle.
kitikiplot
Python library can be used to visualize sequential categorical data. Also, sliding window can be applied, focus can be set.
pip install kitikiplot
from kitikiplot.core import KitikiPlot
# Consider 'df' is a 'pd.DataFrame' containing 'Summary' column
ktk= KitikiPlot( data= df["Summary"].values.tolist() )
ktk.plot( )
Grid Plot For Short Genome Sequences
GitHub Source Code: https://github.com/BodduSriPavan-111/kitikiplot
it depends how you setup your project, you has defined the Buefy in a global state above will work when the function hit this code, else you need to import the Buefy within the component where are you are using it.
"The inviteToken is passed as input."
How are you passing this value to the custom policy?
The REST API requires this as input. Since this is not given a value anywhere in the custom policy, this may explain the error?
I tried to check the local port before creating the container and found that port 5433 was already in use.
C:\Windows\System32>netstat -aon | findstr LISTENING
TCP [::]:5433 [::]:0 LISTENING 6017
I checked the information and found that postgrep.exe had occupied port 5433.
C:\Windows\System32>tasklist /FI "PID eq 6012"
Choose a non-used port to create a container and the connection will be successful
When you load your app, you're presumably going to the /
route. When using a browser to visit a page, a GET
request is sent. Since the /
route only allows POST
requests, Flask returns an error.
POST requests are used when data needs to be sent to the server. See the corresponding MDN page for more information
Since no processing of user data is done in the main
function, remove methods=["POST"]
from its decorator. This will set the allowed methods to GET. (see Flask Docs)
I am not very familiar with Canvas LMS but based on your description it sounds like they restrict JavaScript for security reasons. as you mentioned CSS pseudo-classes and browser events would normally help in this case but it seems those are not possible given the limitations.
One suggestion I can offer is to use the title attribute for the words you want to display the tooltip for. It is a basic solution with limited styling through inline CSS but it does show a tooltip on hover and might still be useful.
Good luck!
final void Function() startQuiz;
remove void here
A bit late maybe, but it might help someone: you can simply group by the sort field, so when that sort field is repeated, it will sort and group at the same time.
<p-table
[value]="data"
groupRowsBy="index"
rowGroupMode="rowspan" >
i know this is an older thread and late to a reply but https://www.querystreams.com
It appears as though there is an option to teardown a provider state here: https://github.com/pact-foundation/pact-net/blob/b3c2fe14a513a886dab165721b156526765690fa/tests/PactNet.Tests/Verifier/ProviderStateOptionsTests.cs#L24
Alright, so this is one of those classic Flutter notification quirks that loves to waste your time. You’ve got the zonedSchedule call working just enough to add a pending notification, but then it just chills in limbo like it's waiting for a divine signal that never comes. First off, make sure you’ve actually initialized your timezone — and no, not just initializeTimeZones(), but also setLocalLocation() using flutter_timezone. Without that, tz.local is basically a confused tourist with no map. Put it in main() before anything else runs.
Then we get to Android 12+, where Google decided that exact alarms are dangerous and must be tamed. So yes, even if you slapped <uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM"/> into the manifest, it still does nothing unless the user manually gives your app permission through system settings. You can try triggering Intent(Settings.ACTION_REQUEST_SCHEDULE_EXACT_ALARM) on the native side, but for debugging, just test on Android 11 or below first so you don’t lose your mind.
Also, your scheduling logic seems fine on paper, but remember: if the scheduled time is even a hair too close to DateTime.now(), it might just silently ignore it. Add a buffer, like 30 seconds, just to be safe. That means tz.TZDateTime.from(DateTime.now().add(Duration(seconds: 30)), tz.local), not some half-second offset that gets eaten by execution delay. Oh, and androidAllowWhileIdle: true should always be set if you want it to actually fire when the device is dozing off in a dark corner.
So in summary:
– Initialise the timezone properly, not halfway.
– Android 12+ needs manual permission for exact alarms.
– Always give it a scheduling buffer.
– androidAllowWhileIdle must be set.
– If it works with show() but not zonedSchedule(), then congrats: the problem is timezone, permissions, or scheduling time — pick your poison.
Hope this spares you the descent into madness. Let me know if you want a full working example that’s not possessed.
# Criando o arquivo naruto_vs_beach.py com o código do jogo
code = """
import pygame
import random
# Inicialização do Pygame
pygame.init()
# Tamanho da tela
WIDTH, HEIGHT = 800, 600
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Naruto vs Beach")
# Cores
WHITE = (255, 255, 255)
BLUE = (135, 206, 235) # Céu
SAND = (194, 178, 128)
# Clock para controlar FPS
clock = pygame.time.Clock()
FPS = 60
# Player (Naruto) settings
player_width, player_height = 50, 70
player_x, player_y = WIDTH // 2, HEIGHT - player_height - 50
player_speed = 5
# Inimigo settings
enemy_width, enemy_height = 50, 70
enemies = []
enemy_speed = 3
spawn_timer = 0
# Ataque settings
attack = False
attack_cooldown = 0
# Font para mostrar texto
font = pygame.font.SysFont(None, 36)
def draw_player(x, y):
# Corpo do Naruto (retângulo laranja)
pygame.draw.rect(screen, (255, 140, 0), (x, y, player_width, player_height))
# Cabeça (círculo)
pygame.draw.circle(screen, (255, 224, 189), (x + player_width // 2, y - 20), 20)
def draw_enemy(x, y):
# Corpo do inimigo (retângulo vermelho)
pygame.draw.rect(screen, (255, 0, 0), (x, y, enemy_width, enemy_height))
# Cabeça (círculo)
pygame.draw.circle(screen, (139, 0, 0), (x + enemy_width // 2, y - 20), 20)
def draw_attack(x, y):
# Representa um ataque (um círculo azul na frente do player)
pygame.draw.circle(screen, (0, 0, 255), (x + player_width + 20, y + player_height // 2), 15)
def main():
global player_x, attack, attack_cooldown, spawn_timer
running = True
score = 0
while running:
screen.fill(BLUE) # Céu
pygame.draw.rect(screen, SAND, (0, HEIGHT - 100, WIDTH, 100)) # Praia (areia)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
keys = pygame.key.get_pressed()
# Movimento do player
if keys[pygame.K_LEFT] and player_x > 0:
player_x -= player_speed
if keys[pygame.K_RIGHT] and player_x < WIDTH - player_width:
player_x += player_speed
# Ataque com espaço
if keys[pygame.K_SPACE] and attack_cooldown == 0:
attack = True
attack_cooldown = 20 # Cooldown de frames para o ataque
# Atualiza ataque
if attack:
draw_attack(player_x, player_y)
attack_cooldown -= 1
if attack_cooldown <= 0:
attack = False
attack_cooldown = 0
# Spawn de inimigos
spawn_timer += 1
if spawn_timer > 60: # Spawn a cada 1 segundo
enemy_x = random.randint(0, WIDTH - enemy_width)
enemy_y = HEIGHT - enemy_height - 100
enemies.append([enemy_x, enemy_y])
spawn_timer = 0
# Movimenta inimigos
for enemy in enemies[:]:
enemy[0] += enemy_speed * (1 if enemy[0] < player_x else -1) # inimigos vão na direção do player
draw_enemy(enemy[0], enemy[1])
# Checa colisão com ataque
if attack and (player_x + player_width + 5 < enemy[0] < player_x + player_width + 50):
enemies.remove(enemy)
score += 1
# Se inimigo alcançar o player, fim de jogo
if abs(enemy[0] - player_x) < 40:
running = False
draw_player(player_x, player_y)
# Mostrar score
score_text = font.render(f"Score: {score}", True, WHITE)
screen.blit(score_text, (10, 10))
pygame.display.flip()
clock.tick(FPS)
pygame.quit()
if __name__ == "__main__":
main()
"""
file_path = "/mnt/data/naruto_vs_beach.py"
with open(file_path, "w") as f:
f.write(code)
file_path
Install miniconda (a minimal version of conda) following instructions in this link. You can do it as a regular user, no sudo needed.
conda init bash
and relogin (or source) to add conda to your PATH.
conda create -n env_name python=3.10
conda activate env_name
Now you can install packages with conda install
or pip install
, but better to stick to one method.
Conda is really cool piece of software - it combines python version management, virtual environment and package installing.
How would you modify your script to allow multiple range within same sheet to export as multiple PDF pages?
I might have edited too much of the original post so I post that message to answer my own question, trying to gain clarity and hoping to make it clearer for other users stomping upon that very same problem.
I did have both ruby versions, the first one being 3.3.8
installed via the xbps-install
VoidLinux's package-manager and the second one being 3.5.0dev
, built from source.
The solution was to nuke the previous ruby installation and all its environment, including the following packages: ruby
, ruby-lsp
, ruby-manpages
, ruby-multi_xml`
and ruby-ri.
I also ditched both /usr/lib/ruby`
and /usr/lib64/ruby
dossiers.
I then removed all environment variables related to Ruby (viz. RUBY_ROOT
, GEM_PATH,
GEM_ROOT
, RUBY_GC_LIBRARY
, GEM_HOME
and RUBY_CONFIGURE_OTS).
I then carried out gem update --system
then gem update
, and finally gem install ruby-lsp
.
I removed the bin's path of solargraph (another ruby LSP) from my $env.PATH
as only directories - not binaries - are used there.
Thank you for your time.
That happens because you have 2 or more python interpreters on your system
for solving this problem , before pip , you have to choose your target interpreter , for example you can say : python3.13 -m pip install numpy
Hope it helps
Essentially you want to send BCC calendar invitations that hide each invitee from each other. You can achieve this within your Outlook calendar application by creating a separate invitation for each attendee with the same Zoom link and meeting information. My understanding is Outlook no longer supports emails in the resources filed and in any event forwarding is not advisable since they are less likely to add it to their calendar and may not receive default reminders. If you want to automate the creation of multiple invites per event you can either try the Graph API or use Salepager which lets you send BCC Outlook calendar invitation with the Zoom link.
traditional approach is initializing mux with option, that decides which code to set based on grpc-metadata in context. Also there is way of manipulating codes per rpc(enpoint) using options in proto definitions, but i have not tried that way yet.
Actually, nowdays both ways are described at https://grpc-ecosystem.github.io/grpc-gateway/docs/mapping/customizing_your_gateway/#controlling-http-response-status-codes
The function names in your error (vkCreateInstance@12
) strongly suggest you are compiling a 32-bit. You must link against the 32-bit version of the Vulkan library.
just in case this helps anyone, I was having this issue and I was doing everything I had done in previous projects/lessons while learning but the image still wouldn't show.
I had src="./Resources/Images/books.jpg" and compared to previous files with same format and was stumped. Turns out because I had moved the html files into a separate folder for multiple pages, the ./Resource path was no longer working. I had to but the full path in which worked.
src=
"C:\git_Repositories\Portfolio_Project\Resources/books.jpg"
You might want to consider using --editable
vcpkg install mypackage --editable
This will allow you to modify the source code in buildtrees to develop a patch. it is not for production
If you have a Data-Driven board, you are not able to update the column headers, these are fixed to the field you used to define the column during creation. You can update the column names on a freeform board simply by clicking the name, but sadly that is not what you're looking for.
Editing Freeform board column header by selecting it
Data driven board creation window
There is a table which manages these: vtb_lane, however, if you make a modification to the name field, the next time you navigate to the board it will re-build the column headers and your updated name will not be visible. It will also delete that vtb_lane record you just edited.
Your problem might be related to the updates in Google Photos API. Some scopes are removed from the Library API after March 31, 2025 which you can check in this documentation. You might also find some helpful insights in this Reddit post.
thanks so much for your fully ideas.
i have an other question about this problem, i run your answers and my model works well but first number of agents ( for example first 28 agents) untill full 28 agents does not wait in hold block and pass it one by one but i need even first 28 number or any other batch number holded in hold agent.
how should i do it?
you can use the HAVING clause.
Yes, you can definitely create a Python virtual environment with a higher version than the system default. Here's how:
First, install pyenv. This lets you install and switch between multiple Python versions on the same system.
curl https://pyenv.run | bash
Then install your desired version, e.g. Python 3.11.3:
pyenv install 3.11.3
pyenv global 3.11.3
Now create and activate your virtual environment:
python -m venv myenv
source myenv/bin/activate
You can now install your project dependencies and run your code with the newer version – fully isolated from the global Python on the node. This approach works well on most systems where pyenv can be installed.
Alternative: Docker
If you’re on a restricted system where you can’t install or compile your own Python version, Docker is a good alternative. Use a base image like python:3.11 and run everything inside the container.
That way, your environment is portable and version-controlled – even if the host OS uses an older Python.
Let me know if you want a basic Dockerfile or pyenv install script.
Good luck!
– Tipps-TECH
Looks to me like you are using a Set for rowSelectionModel but MUI DataGrid is expecting an array. Try updating selectedFilter to be an array of ids.
In case this helps anyone, in my case this turned out to be caused by the PayPal Honey for Safari extension.
where your_column not like '%your_text%'
In my case, I had set the evironment variable OPENSSL_CONF to an invalid value. Once I removed, I was able to make ssl connection to a private repo.
Gentlemen. After 6 years I stumbled on this thread. It seems as if it's the only source for what I need for my work in the whole of internet. So, very impressive, thank you very much. I need this code because I'm a strength analyst, and an Excel heavy user. I need to be able to compare the formulas straight to the equations presented in standards, because it takes effort to figure out the corresponding measure for each address in the formula. In order to reach the required level of automation I taped PEH's code with the code by M-- in the thread:
How to run a string as a command in VBA
M--'s code creates, writes, runs and deletes Module1 in VBA editor. That way PEH's command to modify the equation shape can be constucted and run as a string. I was not able to solve the initiation of the equation ether, so the first equation opened will modify. I call my macro from Developer:Macros. In the pictures below are the views of my VBA Editor and Calculation sheet. Create similar Excel, and create a userform by clicking Insert: UserForm in the VBA editor. Insert textbox and a button objects to the userform. Clicking them opens the list of object attributes, and mark the name of the textbox as "TxtCellAddress" and the name of the button as "CommmandButton1". Then create two new modules by clicking Insert: Module twise. Then delete Module1. In Module2 create the sub (presented in the picture) that initiates the userform when macro is called.
The UserForm1 in the VBA editor has "View object" and "View code" buttons in the top left corner of the project vindow. Click on the "View code" button to view the canvas, and paste the code below on it. (Check each line first to prevent malice code!)
Option Explicit
Private Sub CommandButton1_Click()
On Error GoTo ErrorHandler
'UserForm1 contains a textbox(TxtCellAddress) and a button(CommandButton1).
'When user writes CELL address, and clicks the button, the first shape on the
'ActiveSheet(In this case, the shape is an equation box, which has previously
'been plased on the sheet manually.) is evoked. This program modifies the
'equation box to present the formula.
'This code requires lowering your Excel security. Do not open Excel files sent
'by other people while you work, and please remember to reverse these changes
'after your work. Remember that malicious macros open, when Excel workbook is
'opened. From File: Options: Trust Center: Macro Settings:
'Click: Enable VBA macros(not recommended; potentially dangerous code can run)
'Click: Trust access to the VBA project object model
'The formula to be presented in equation box is obtained as a string value
'from a cell the user must name in in the textbox. First the string containing
'the formula is checked for INDIRECT() functions, that are evaluated.
'The string containing the formula is then processed so, that the cell
'addresses in formula are replaced by the names of the measures they keep. The
'names of the measures may consist of symbols or they may have two parts,
'first the normal part, and second the subscripted part. The default font of
'Excel Equation Editor is "Cambria Math". I dont know how to change that, so
'it is advisable to use that font in the column of the names of the measures.
'In the ActiveSheet the calculation is set on column J, The description of the
'measures are on column D, and the names of the measures are on column E. The
'identifications of the calculation are marked on row 8. When the calculation
'is copied column to column for say analysis of flanges in different pipe
'locations, the identification helps, and thus we also want to see it in the
'equation box. The string with the formula is then translated to a string
'consisting of a set of character commands, readable by the equation editor.
'Next a subroutine ExecuteString() is called. It creates Module1, and writes
'the subs foo(), MakeEquationLinear() and MakeEquationProfessional(), and then
'calls a subroutine foo() to be executed. Subroutine foo() sends the info to
'the Equation Editor, that one has to previously open manually. The code
'expects the Equation Editor to appear in the first shape i.e.
'ActiveSheet.Shapes(1). Afterwards Module1 is deleted. Put the subroutine that
'calls Userform1 to another module, because Module1 is reserved for the
'operation of this code.
Dim start As Long
Dim count As Integer
Dim aihio As String
Dim measureText As String
Dim aihioLen As Integer
Dim state As Integer
Dim char As String * 1
Dim prevChar As String * 1
Dim i As Long
Dim ii As Integer
Dim originalText As String
Dim cellAddress As String
Dim measure(0 To 1000) As String
Dim indirectNum As Integer
Dim indirectLocation(1 To 1000) As Long
Dim indirectLength(1 To 1000) As Integer
Dim indirectRef As String
Dim iE As String
Dim rowNum As Integer
Dim colNum As Integer
Dim stringToRun As String
Dim columnOfMeasureNames As String
Dim CN As Integer
Dim rowOfItemNames As Integer
Dim rE As Range
columnOfMeasureNames = "C"
rowOfItemNames = 8
CN = Columns(columnOfMeasureNames).Column
'Get cell adress from textbox. "Me" refers to the userform object. Because
'this subroutine is in the UserForm1 module the precise object identification
'is not required.
cellAddress = Me.TxtCellAddress.Value
'Get row number of the cell named in textbox
rowNum = ActiveSheet.Range(cellAddress).Row
'Get column number of the cell named in textbox
colNum = ActiveSheet.Range(cellAddress).Column
'Get the formula as string from the cell named in textbox
originalText = ActiveSheet.Range(cellAddress).Formula
'************ START OF INDIRECT() FUNCTIONS PROCESSING ************'
'If this segment causes a problem, remove it
indirectNum = 0
state = 0
For i = 1 To Len(originalText)
char = Mid(originalText, i, 1)
If (char = "I" Or char = "i") And state = 0 Then
state = 1
ElseIf (char = "N" Or char = "n") And state = 1 Then
state = 2
ElseIf (char = "D" Or char = "d") And state = 2 Then
state = 3
ElseIf (char = "I" Or char = "i") And state = 3 Then
state = 4
ElseIf (char = "R" Or char = "r") And state = 4 Then
state = 5
ElseIf (char = "E" Or char = "e") And state = 5 Then
state = 6
ElseIf (char = "C" Or char = "c") And state = 6 Then
state = 7
ElseIf (char = "T" Or char = "t") And state = 7 Then
state = 8
indirectNum = indirectNum + 1
indirectLocation(indirectNum) = i - 7
ElseIf char = "(" And state > 7 Then
state = state + 1
ElseIf char = ")" And state > 8 Then
state = state - 1
If state = 8 Then
indirectLength(indirectNum) = i - indirectLocation(indirectNum) + 1
'Go back incase of INDIRECT statements inside INDIRECT statement.
i = indirectLocation(indirectNum) + 7
state = 0
End If
ElseIf state < 9 Then
state = 0
End If
Next
If indirectNum > 0 Then
For i = indirectNum To 1 Step -1
'Get the formula between the caps of the indirect function
indirectRef = Mid(originalText, indirectLocation(i), indirectLength(i))
'Evaluate the line formula betveen the caps of the indirect function
iE = Application.Evaluate(Mid(indirectRef, 10, indirectLength(i) - 10))
'Replace the Indirect function with the evaluation in the formula
originalText = Replace(originalText, indirectRef, iE)
Next
End If
'************ END OF INDIRECT() FUNCTIONS PROCESSING ************'
'Get the Address of the name of the measure from the column of names
originalText = ActiveSheet.Cells(rowNum, CN).Address & originalText
'************ START OF LISTING CELL ADDRESSES IN FORMULA *************'
'Consider each character in string that contains the formula. If it is an
'alphabetic letter or a "$" sign, then start making a record of an address. If
'the next is also alphabetic or a "$" sign continue makin record. If the next
'is a number, continue making the record, but accept only numeral characters
'from now on. If the character is something else, then stop making record. If
'the record is a full address when stopped, add it to the measure array,
'otherwise discard it.
state = 0
count = 0
For i = 1 To Len(originalText)
char = Mid(originalText, i, 1)
If IsAlpha(char) Or char = "$" Then
If state = 0 Then
aihio = char
If i > 1 Then
prevChar = Mid(originalText, i - 1, 1)
Else
'No previous character for the first letter. Here it's just A
prevChar = "A"
End If
state = 1
ElseIf state = 1 Then
aihio = aihio & char
ElseIf state = 2 Then
state = 0
measure(count) = aihio
count = count + 1
End If
ElseIf IsNumeric(char) And state > 0 Then
aihio = aihio & char
state = 2
'If formula ends in a cell address, the last character is a number.
If i = Len(originalText) Then
'If another sheet "!" or an array of cells ":" is referenced.
If prevChar = "!" Or prevChar = ":" Then
state = 0
Else
measure(count) = aihio
count = count + 1
End If
End If
ElseIf state = 2 Then
If prevChar = "!" Or prevChar = ":" Or char = ":" Then
state = 0
Else
state = 0
measure(count) = aihio
count = count + 1
End If
Else
state = 0
End If
Next
'************ END OF LISTING CELL ADDRESSES IN FORMULA *************'
'**** START OF REPLACING CELL ADDRESSES WITH THE NAMES OF THE MEASURES ****'
'For each name of measure in measure array
For i = 0 To count - 1
Set rE = ActiveSheet.Range(Replace(measure(i), "$", ""))
'If the cell of the measure is not empty
If Not IsEmpty(rE.Value) Then
'Get name of the measure
measureText = ActiveSheet.Cells(rE.Row, CN).Value
If measureText = "" Then
'Forgot to name the measure in the column of measure names?
measureText = "?"
Else
'For each character in name of the measure
For ii = 1 To Len(measureText)
'If the character in the name of the measure in the cell is subscript
If ActiveSheet.Cells(rE.Row, CN).Characters(ii, 1).Font.Subscript Then
'Add markings for subscript
measureText = Left(measureText, ii - 1) _
& "_(" & Right(measureText, Len(measureText) - ii + 1) & ")"
'Break the For loop when the objective is accomplished
Exit For
End If
Next
End If
'Replace addresses in the formula string with the name of the measure
originalText = Replace(originalText, measure(i), measureText)
End If
Next
'**** END OF REPLACING CELL ADDRESSES WITH THE NAMES OF THE MEASURES ****'
'The Identification of the calculation is added to the equation string
originalText = ActiveSheet.Cells(rowOfItemNames, colNum).Value _
& ":" & originalText
'Adds the start of the command to the command linestring
stringToRun = "MyEquation.DrawingObject.Text = " & outputString(originalText)
'Here the subroutine to write, execute and delete a new module is called.
ExecuteString stringToRun
Exit Sub
ErrorExit:
Exit Sub
ErrorHandler:
Debug.Print Err.Number & vbNewLine & Err.Description
Resume ErrorExit
End Sub
Function IsAlpha(s$) As Boolean
'This function returns true if the input character (String * 1) is alphabetic.
'Otherwise it retuns false. Copied from
'https://stackoverflow.com/questions/29633517/how-
'can-i-check-if-a-string-only-contains-letters
IsAlpha = Not s Like "*[!a-zA-Z]*"
End Function
Function outputString(inputString$) As String
On Error GoTo ErrorHandler
'If the text is taken from Cell as text, only the ASCII characters and
'markings are presented correctly. Others, symbols and such are presented
'by ?.'This function takes every character, weather ASCII or a Symbol, and
'gives it ChrW number. The output is a string of ChrW commands, that is
'readable by the Excel Equation Editor. This was copied from
'https://stackoverflow.com/questions/55478312/is-there-any-documentation-on-
'how-to-drive-the-office-equation-editor-through
Dim ChrIdx As Long
For ChrIdx = 1 To Len(inputString)
outputString = outputString & IIf(outputString <> vbNullString, " & ", "") _
& "ChrW(" & AscW(Mid$(inputString, ChrIdx, 1)) & ")"
Next ChrIdx
ErrorExit:
Exit Function
ErrorHandler:
Debug.Print Err.Number & vbNewLine & Err.Description
Resume ErrorExit
End Function
Sub ExecuteString(s As String)
On Error GoTo ErrorHandler
'This subroutine creates a new module, then runs the code from within, and
'then deletes the module after use. The Idea is, that because there are no
'direct vba commands to dynamically operate the Excel Equation Editor. The
'dynamic(using information in command that is not provided by the programmer)
'operation is made possible by automatically creating new module, writing
'new subroutines and the executing them. The codes here are copied and
'modified from the following sources:
'https://stackoverflow.com/questions/43216390/how-to-run-a-string-as-a-
'command-in-vba
'https://stackoverflow.com/questions/55478312/is-there-any-documentation-on-
'how-to-drive-the-office-equation-editor-through
'The Excel Equation Manager takes input as it is evoked from a list of ChrW
'commands. It is propably possible somehow to give the command as combination
'of ASCII tect and ChrW commands just to make the command string shorter.
Dim code As String
code = "Option Explicit" & vbCrLf
code = code & "Sub foo()" & vbCrLf
code = code & "On Error GoTo ErrorHandler" & vbCrLf
code = code & "Dim MyEquation As Shape" & vbCrLf
code = code & "Set MyEquation = ActiveSheet.Shapes(1)" & vbCrLf
code = code & "MakeEquationLinear MyEquation" & vbCrLf
code = code & "Application.EnableEvents = False" & vbCrLf
Dim i As Long
Dim ii As Long
'**** START OF SPLITTING THE COMMAND STRING TO LINES < 1024 CHAR ****'
i = IIf(1000 < Len(s), 1000, Len(s)) 'IIf() = Min(1000,Len(s))
ii = 1
While i <= Len(s)
If Mid(s, i, 1) = " " Then
code = code & Mid(s, ii, i - ii + 1) & "_" & vbCrLf
ii = i + 1
'If Min() was available in VBA: IIf() = Min(999,Len(s)-i-1)
i = i + IIf(999 < Len(s) - i - 1, 999, Len(s) - i - 1)
ElseIf i = Len(s) Then
code = code & Mid(s, ii, i - ii + 1) & vbCrLf
End If
i = i + 1
Wend
'**** END OF SPLITTING THE COMMAND STRING TO LINES < 1024 CHAR ****'
code = code & "Application.EnableEvents = True" & vbCrLf
code = code & "MakeEquationProfessional MyEquation" & vbCrLf
code = code & "ErrorExit:" & vbCrLf
code = code & " Application.EnableEvents = True" & vbCrLf
code = code & " Exit Sub" & vbCrLf
code = code & "ErrorHandler:" & vbCrLf
code = code & "Debug.Print Err.Number & vbNewLine & Err.Description" & vbCrLf
code = code & "Resume ErrorExit" & vbCrLf
code = code & "End Sub" & vbCrLf
Dim suba As String
suba = "Public Sub MakeEquationLinear(ByVal Equation As Shape)" & vbCrLf
suba = suba & "On Error GoTo ErrorHandler" & vbCrLf
suba = suba & "Dim OriginalSheet As Object" & vbCrLf
suba = suba & "If Equation.Parent.Name <> ActiveSheet.Name Then" & vbCrLf
suba = suba & " Set OriginalSheet = ActiveSheet" & vbCrLf
suba = suba & " Equation.Parent.Activate" & vbCrLf
suba = suba & "End If" & vbCrLf
suba = suba & "Application.EnableEvents = False" & vbCrLf
suba = suba & "Equation.Select" & vbCrLf
suba = suba & "Application.CommandBars.ExecuteMso ""EquationLinearFormat""" _
& vbCrLf
suba = suba & "Application.EnableEvents = True" & vbCrLf
suba = suba & "If Not OriginalSheet Is Nothing Then OriginalSheet.Activate" _
& vbCrLf
suba = suba & "ErrorExit:" & vbCrLf
suba = suba & " Application.EnableEvents = True" & vbCrLf
suba = suba & " Exit Sub" & vbCrLf
suba = suba & "ErrorHandler:" & vbCrLf
suba = suba & " Debug.Print Err.Number & vbNewLine & Err.Description" _
& vbCrLf
suba = suba & " Resume ErrorExit" & vbCrLf
suba = suba & "End Sub" & vbCrLf
Dim subb As String
subb = "Public Sub MakeEquationProfessional(ByVal Equation As Shape)" & vbCrLf
subb = subb & "On Error GoTo ErrorHandler" & vbCrLf
subb = subb & "Dim OriginalSheet As Object" & vbCrLf
subb = subb & "If Equation.Parent.Name <> ActiveSheet.Name Then" & vbCrLf
subb = subb & "Set OriginalSheet = ActiveSheet" & vbCrLf
subb = subb & "Equation.Parent.Activate" & vbCrLf
subb = subb & "End If" & vbCrLf
subb = subb & "Application.EnableEvents = False" & vbCrLf
subb = subb & "Equation.Select" & vbCrLf
subb = subb & "Application.CommandBars.ExecuteMso ""EquationProfessional""" _
& vbCrLf
subb = subb & "Application.EnableEvents = True" & vbCrLf
subb = subb & "If Not OriginalSheet Is Nothing Then OriginalSheet.Activate" _
& vbCrLf
subb = subb & "ErrorExit:" & vbCrLf
subb = subb & " Application.EnableEvents = True" & vbCrLf
subb = subb & " Exit Sub" & vbCrLf
subb = subb & "ErrorHandler:" & vbCrLf
subb = subb & " Debug.Print Err.Number & vbNewLine & Err.Description" _
& vbCrLf
subb = subb & " Resume ErrorExit" & vbCrLf
subb = subb & "End Sub" & vbCrLf
Dim tempVBC As Object
Set tempVBC = ActiveWorkbook.VBProject.VBComponents.Add(1)
tempVBC.CodeModule.AddFromString code
tempVBC.CodeModule.AddFromString suba
tempVBC.CodeModule.AddFromString subb
Application.Run tempVBC.Name & ".foo"
ThisWorkbook.VBProject.VBComponents.Remove tempVBC
ErrorExit:
Exit Sub
ErrorHandler:
Debug.Print Err.Number & vbNewLine & Err.Description
Resume ErrorExit
End Sub
In the code you can edit the following lines to match the column and row on your sheet:
columnOfMeasureNames = "C"
rowOfItemNames = 8
Result:
I am a Professional Digital marketer Apple podcast promotion, Spotify promotion and Youtube Expert. I am highly experienced and skilled in podcast promotion services since 2018. Value of my expertise is the success of your podcast marketing. If you want to grow your Podcast Top Ranking and audiences downloads and higher placement I'm here to give you the best version of podcast marketing services. I have developed strategy and a team for podcast promotion services. The strategy will ensure to grow your listeners' downloads, audience response and popularity growth on multiple platforms.
My service is 100% safe, real and legitimate. So I would say check me at least once time. I'm sure you'll succeed.
Contact me here:-
Gmail: [email protected]
Have the same exact question, curious to see if this is intended simulator behavior or just a version specific quirk!
Im probably just occasionally stumble into explanation of this situation while was reserching yet another annoying unavoidable problem with Deno. In this article was mentioned that symbol #
is used to provide hashing mechanism for the import
. So my guess is that Deno treat everything that is following after #
symbol inside a path of some imported file as hash and by that searching for a trimmed version of used path despite showing the full path in the error message. All other symbols from ASCII table except #
seems to be safe for use in file names. I guess.
From the error, I figured not everything was sent when I called request_response.send_response()
.
To fix this I had to set the max request size and response size when defining the request_reponse Behaviour
so it can accept and send larger files.
let codec = cbor::codec::Codec::default()
.set_request_size_maximum(u64::MAX) // specify max file size
.set_response_size_maximum(u64::MAX);
let request_response = request_response::cbor::Behaviour::with_codec(
codec,
[(
StreamProtocol::new("/file-exchange/1"),
ProtocolSupport::Full,
)],
request_response::Config::default(),
);
The ternary tuple in such case is (1 market, 1 department, 1..* products). Therefore, the resulting reading logic (also in terms of tuples) is:
For each 1 market: (1 department, 1..* products)
For each 1 department: (1 market, 1..* products)
For each 1..* product(s): (1 market, 1 department)
If a department sells products to market, then a market buys products (from department) and they (e.g.) operate on 1..* product(s). Hence:
For each 1 market:
For each 1 department:
For each 1..* product(s):
1 department operates 1 market [to sell that/those 1..* product(s)]; or
1 market is operated by 1 department [to buy that/those 1..* product(s))
It seems you have created and started the loop, but your transport hasn't started. Maybe that is why it doesn't enter your callback
I see multiple options, but in my case due to proxy I was facing this issue, most of company needs proxy, as per your org setup here:
File>>Settings>>Search for "HTTP Proxy"
PyPDF2 is deprecated. You should use pypdf instead.
If you must use PyPDF2, you can pip install 'PyPDF2<3.0'
in your environment.
Turns out this is an actual bug in 4.32.0: github.com/liquibase/liquibase/issues/6982
Temp workaround is to downgrade to 4.31.0.
Thanks to @mario-champion for posting about it in the comments below!
It says it here in the error message
PyPDF2.errors.DeprecationError: PdfFileReader is deprecated and was removed in PyPDF2 3.0.0. Use PdfReader instead.
So you need to:
pip install PdfReader
remove PyPDF2
import PdfReader
When you start dragging a window’s title bar to move it or adjust its size by dragging its border, your program first receives a WM_ENTERSIZEMOVE
message. This message simply notifies you that dragging is about to begin. Subsequently, a WM_SYSCOMMAND
message arrives, where the wParam
value determines the action type. You’ll use switch (GET_SC_WPARAM(wParam))
to handle it. When the switch hits case SC_MOVE:
or case SC_SIZE:
, it indicates that the system is entering drag mode. If you directly forward this message to DefWindowProc()
, it blocks by starting its own internal message loop, handling mouse movements, window resizing, and other complex operations internally. When you release the mouse, DefWindowProc()
returns 0
, ending the blocking. Finally, it sends a WM_EXITSIZEMOVE
message to notify you that drag mode has ended.
For scenarios like game development, video player implementations, etc.—where you cannot rely on blocking-style GetMessage()
loops with timers (Timer
callbacks) and must avoid blocking during message processing (e.g., DefWindowProc()
blocking)—yet still need to support window dragging and resizing, here’s a workaround technique to interrupt and recover from blocking.
First, my window message handler is non-blocking. It’s named PollWindowEvents()
and is called repeatedly by the user’s main loop. The caller handles its own tasks (e.g., rendering dynamic content) and then invokes PollWindowEvents()
to process window messages, check keyboard inputs, etc. Similar to GLFW’s design, as long as PollWindowEvents()
doesn’t block, the caller’s loop keeps running.
The logic of PollWindowEvents()
roughly looks like this:
while (PeekMessageW(&msg, NULL, 0, 0, PM_REMOVE))
{
TranslateMessage(&msg);
if (msg.message == WM_QUIT)
{
w->should_quit = 1;
w->exit_code = (int)msg.wParam;
}
else
{
DispatchMessageW(&msg);
}
}
During window dragging, although DefWindowProc()
blocks, timer events (WM_TIMER
) still reach your window procedure. Additionally, WM_MOVE
, WM_SIZE
, and WM_SIZING
messages are delivered frequently during drag/resize operations.
If within these messages, I can break out of DefWindowProc()
’s context and make PollWindowEvents()
return, blocking is resolved. On the next call to PollWindowEvents()
, I jump back into the message handler as if nothing happened, resuming DefWindowProc()
’s drag logic to complete the cycle.
Achieving this jump requires setjmp()
and longjmp()
from the C standard library. Unfortunately, they’re problematic here. MSVC’s longjmp()
enforces RAII resource cleanup rules in C++ and handles uncaught exceptions. It assumes longjmp()
is a non-returning operation, requiring all stack resources and exceptions to be resolved before jumping. This "safety" conflicts with our need, where jumping back into the context later shouldn’t disrupt normal RAII or exception handling.
Jumping is only part of the problem. The blocking DefWindowProc()
uses its stack frame, while returning from PollWindowEvents()
lets the caller use its stack frame. If we longjmp()
out (which restores the stack pointer to the setjmp()
state), two stack frames are used simultaneously—leading to data corruption and stack overwrites. Thus, we need two separate stacks.
longjmp()
: Bypass MSVC’s extra safety checks using custom shellcode._aligned_malloc()
to allocate a 16-byte aligned memory block as the new stack.jmp_to_new_stack()
, which does three things:
my_longjmp()
to return from the new stack to the old stack’s setjmp()
position.Why my_longjmp()
instead of restoring the old stack pointer directly? Because both stacks are active; the original stack pointer becomes invalid after leaving its context.
Setting jump targets:
PollWindowEvents()
(before PeekMessageW
), use setjmp()
to set a "re-entry point" for resuming blocked operations.PollWindowEvents()
(after the PeekMessageW
loop), use setjmp()
to set an "escape point" for breaking out of blocking.WM_TIMER
/WM_MOVE
/WM_SIZE
handlers, use setjmp()
to set "re-entry points" for jumping back into the blocking function.Entering blocking mode:
WM_SYSCOMMAND
handler (for SC_MOVE
/SC_SIZE
), create a timer, allocate the new stack, then call jmp_to_new_stack()
. The provided callback invokes:DefWindowProcW(w->Window, WM_SYSCOMMAND, wParam, 0); // Enters blocking
Escaping blocking mode:
WM_TIMER
/WM_MOVE
/WM_SIZE
handlers (executing on the new stack), use my_longjmp()
to jump to the "escape point" at PollWindowEvents()
’s end—returning control to the caller.Re-entry logic:
PollWindowEvents()
call detects the interrupted state and uses my_longjmp()
to jump back to the handler’s "re-entry point."Exiting blocking mode:
DefWindowProcW()
returns (after drag ends), use my_longjmp()
to jump to PollWindowEvents()
’s start, letting normal message processing resume._my_longjmp()
__declspec(noreturn)
void _my_longjmp(jmp_buf jb, int value)
{
#ifdef _M_IX86
static const uint32_t shellcode_my_longjmp[] =
{
0x0424548B,
0x0824448B,
0x8301F883,
0x2A8B00D0,
0x8B045A8B,
0x728B087A,
0x10628B0C,
0xFF04C483,
0x90901462,
};
#elif defined(_M_X64)
static const uint64_t shellcode_my_longjmp[] =
{
0x4808598B48D08948,
0x4818698B4810618B,
0x4C28798B4820718B,
0x4C38698B4C30618B,
0x0F48798B4C40718B,
0x5C69D9E2DB5851AE,
0x6F0F6660716F0F66,
0x80816F0F44667079,
0x896F0F4466000000,
0x6F0F446600000090,
0x0F4466000000A091,
0x4466000000B0996F,
0x66000000C0A16F0F,
0x000000D0A96F0F44,
0x0000E0B16F0F4466,
0x00F0B96F0F446600,
0x9090905061FF0000,
};
#else
// If your computer is not x86 nor x64, implement your own `longjmp()` shellcode for your CPU.
longjmp(jb, value);
#endif
static DWORD dwOldProtect = 0;
if (!dwOldProtect) VirtualProtect((void *)shellcode_my_longjmp, sizeof shellcode_my_longjmp, PAGE_EXECUTE_READ, &dwOldProtect);
void(*my_longjmp)(jmp_buf jb, int value) = (void *)shellcode_my_longjmp;
my_longjmp(jb, value);
}
_jmp_to_new_stack()
__declspec(noreturn)
void _jmp_to_new_stack(void *stack_buffer, size_t stack_size, void(*function_to_run)(void *userdata), void *userdata, jmp_buf returning, int longjmp_val)
{
#ifdef _M_IX86
static const uint32_t shellcode_jmp_to_new_stack[] =
{
0x608be089,
0x08600304,
0xff1870ff,
0x70ff1470,
0x0c50ff10,
0x6804c483,
0xdeadbeef,
0x909002eb,
0x0424548b,
0x0824448b,
0x8301f883,
0x2a8b00d0,
0x8b045a8b,
0x728b087a,
0x10628b0c,
0xff04c483,
0x90901462,
};
#elif defined(_M_X64)
static const uint64_t shellcode_jmp_to_new_stack[] =
{
0x0148cc8948e08948,
0x4c2870ff3070ffd4,
0xff4120ec8348c989,
0xeb5a5920c48348d0,
0x9090909090909007,
0x4808598b48d08948,
0x4818698b4810618b,
0x4c28798b4820718b,
0x4c38698b4c30618b,
0x0f48798b4c40718b,
0x5c69d9e2db5851ae,
0x6f0f6660716f0f66,
0x80816f0f44667079,
0x896f0f4466000000,
0x6f0f446600000090,
0x0f4466000000a091,
0x4466000000b0996f,
0x66000000c0a16f0f,
0x000000d0a96f0f44,
0x0000e0b16f0f4466,
0x00f0b96f0f446600,
0x9090905061ff0000,
};
#else
fprintf(stderr, "[UNIMPLEMENTED] Please provide your shellcode for your CPU to implement `jmp_to_new_stack()` by doing these steps:\n");
fprintf(stderr, "[UNIMPLEMENTED] Save your current stack pointer register to a volatile register whichever you'd like to use, the volatile register stores your original stack pointer and could help you to retrieve your parameters;\n");
fprintf(stderr, "[UNIMPLEMENTED] Set your stack pointer register to the end of my stack buffer: `(size_t)stack_buffer + stack_size`;\n");
fprintf(stderr, "[UNIMPLEMENTED] After moving to the new stack, save your 5th and 6th paramters to the new stack;\n");
fprintf(stderr, "[UNIMPLEMENTED] Retrieve your 4th parameter `userdata` from the original stack (using the saved stack pointer in the volatile register);\n");
fprintf(stderr, "[UNIMPLEMENTED] Your 3rd parameter is a pointer to a callback function (the function to run on the new stack). Call it and pass `userdata`. NOTE: This function will destroy your volatile register as usual occasion;\n");
fprintf(stderr, "[UNIMPLEMENTED] After calling the function, balance your stack;\n");
fprintf(stderr, "[UNIMPLEMENTED] Retrieve your 5th (`jmp_buf`) and 6th (`longjmp_value`) parameters from where you saved them on the new stack, these parameters are for returning to your previous stack via a `longjmp()`;\n");
fprintf(stderr, "[UNIMPLEMENTED] IMPORTANT: Both stacks are actively changing, do not attempt to restore the stack pointer directly;\n");
fprintf(stderr, "[UNIMPLEMENTED] Implement and execute a `longjmp(jmp_buf, longjmp_value)` to return to the original stack\n");
assert(0);
#endif
static DWORD dwOldProtect = 0;
if (!dwOldProtect) VirtualProtect((void *)shellcode_jmp_to_new_stack, sizeof shellcode_jmp_to_new_stack, PAGE_EXECUTE_READ, &dwOldProtect);
void(*jmp_to_new_stack)(void *, size_t, void(*)(void *), void *, jmp_buf, int) = (void *)shellcode_jmp_to_new_stack;
jmp_to_new_stack(stack_buffer, stack_size, function_to_run, userdata, returning, longjmp_val);
}
The arrays contain shellcode (machine code) for context switching. Implementations:
x86 my_longjmp
:
bits 32
;void my_longjmp(jmp_buf jb, int value);
my_longjmp:
mov edx, [esp + 4]
mov eax, [esp + 8]
cmp eax, 1
adc eax, 0
mov ebp, [edx + 0]
mov ebx, [edx + 4]
mov edi, [edx + 8]
mov esi, [edx + 12]
mov esp, [edx + 16]
add esp, 4
jmp [edx + 20]
times 4 - ($ - $$ & 3) nop ; Alignment
x64 my_longjmp
:
bits 64
;void my_longjmp(jmp_buf jb, int value);
my_longjmp:
mov rax, rdx
mov rbx, [rcx + 0x08]
mov rsp, [rcx + 0x10]
mov rbp, [rcx + 0x18]
mov rsi, [rcx + 0x20]
mov rdi, [rcx + 0x28]
mov r12, [rcx + 0x30]
mov r13, [rcx + 0x38]
mov r14, [rcx + 0x40]
mov r15, [rcx + 0x48]
;rip = [rcx + 0x50]
ldmxcsr [rcx + 0x58]
fnclex
fldcw [rcx + 0x5C]
movdqa xmm6, [rcx + 0x60]
movdqa xmm7, [rcx + 0x70]
movdqa xmm8, [rcx + 0x80]
movdqa xmm9, [rcx + 0x90]
movdqa xmm10, [rcx + 0xA0]
movdqa xmm11, [rcx + 0xB0]
movdqa xmm12, [rcx + 0xC0]
movdqa xmm13, [rcx + 0xD0]
movdqa xmm14, [rcx + 0xE0]
movdqa xmm15, [rcx + 0xF0]
jmp [rcx + 0x50]
times 8 - ($ - $$ & 7) nop ; Alignment
x86 jmp_to_new_stack
:
bits 32
;void jmp_to_new_stack(void *stack_buffer, size_t stack_size, void(*function_to_run)(void *userdata), void *userdata, jmp_buf returning, int longjmp_value);
jmp_to_new_stack:
mov eax, esp ; Save old ESP
mov esp, [eax + 4] ; Set ESP = stack_buffer
add esp, [eax + 8] ; ESP = stack_buffer + stack_size
; Set up args for callback & my_longjmp
push dword [eax + 24] ; longjmp_val
push dword [eax + 20] ; returning jmp_buf
push dword [eax + 16] ; userdata
call dword [eax + 12] ; Call func(userdata) on new stack
add esp, 4 ; Cleanup
push dword 0xDEADBEEF ; There should be a returning address, but we don't return this way.
jmp my_longjmp
times 4 - ($ - $$ & 3) nop ; Alignment
%include "x86_my_longjmp.asm"
x64 jmp_to_new_stack
bits 64
;void jmp_to_new_stack(void *stack_buffer, size_t stack_size, void(*function_to_run)(void *userdata), void *userdata, jmp_buf returning, int longjmp_value);
jmp_to_new_stack:
mov rax, rsp ; Save old RSP
mov rsp, rcx ; Set RSP = stack_buffer
add rsp, rdx ; RSP = stack_buffer + stack_size
push qword [rax + 48] ; longjmp_val
push qword [rax + 40] ; returning jmp_buf
mov rcx, r9 ; userdata
sub rsp, 32 ; x64 call needs to pre-allocate stack memory for 4 parameters for the home of RCX, RDX, R8, R9
call r8 ; Call func(userdata) on new stack
add rsp, 32 ; Cleanup
pop rcx ; Retrieve longjmp_val
pop rdx ; Retrieve returning jmp_buf
jmp my_longjmp
times 8 - ($ - $$ & 7) nop ; Alignment
%include "x64_my_longjmp.asm"
State Tracking Structure:
typedef struct
{
void *new_stack; // Allocated stack memory
size_t new_stack_size; // Stack size
volatile int hack_is_on; // 1 if in blocking escape mode
volatile int is_returned_from_timer; // Flag for escaped state
WPARAM syscommand_wparam; // Saved WM_SYSCOMMAND param
jmp_buf jb_returning; // Escape point (Poll end)
jmp_buf jb_reentering; // Re-entry point (handlers)
jmp_buf jb_exit_hacking; // Exit point (blocking ends)
}HackWayAntiBlocking;
Code to be added into PollWindowEvents()
before PeekMessage()
:
if (setjmp(w->hack.jb_exit_hacking) == 1)
{ // After blocking ends (DefWindowProc returns)
KillTimer(w->Window, 1);
w->hack.hack_is_on = 0;
}
if (w->hack.hack_is_on)
{ // Re-enter blocked context if needed
if (w->hack.is_returned_from_timer)
_my_longjmp(w->hack.jb_reentering, 1);
}
Code to be added into PollWindowEvents()
before returning:
if (setjmp(w->hack.jb_returning) == 1)
{ // Escape from the blocked call
return;
}
WndProc
Handler Additions:
WM_SYSCOMMAND
:case WM_SYSCOMMAND:
switch (GET_SC_WPARAM(wp))
{
case SC_MOVE:
case SC_SIZE:
w = (void *)GetWindowLongPtrW(hWnd, 0);
assert(w->hack_is_on == 0);
w->hack.syscommand_wparam = wp;
if (!w->hack.new_stack)
{ // Allocate memory for the new stack, 64 KiB is not too much or too less
w->hack.new_stack_size = (size_t)1 << 16;
w->hack.new_stack = _aligned_malloc(w->hack.new_stack_size, 16);
}
if (w->hack.new_stack)
{ // From here, we are going to switch to the new stack and call the blocking function.
w->hack.hack_is_on = 1;
// Start timer. When blocking, our `WndProc()` still can receive `WM_TIMER` event.
SetTimer(w->Window, 1, 1, NULL);
_jmp_to_new_stack(w->hack.new_stack, w->hack.new_stack_size, _run_blocking_proc, w, w->hack.jb_exit_hacking, 1);
}
else
{ // Can't allocate memory for the new stack? Give up here.
w->hack.new_stack_size = 0;
}
break;
default:
return DefWindowProcW(hWnd, msg, wp, lp);
}
break;
WM_TIMER
/WM_MOVE
/WM_SIZE
:case WM_MOVE:
case WM_SIZING:
case WM_SIZE:
case WM_TIMER:
if (msg != WM_TIMER || wp == 1)
{
w = (void *)GetWindowLongPtrW(hWnd, 0);
if (w->hack.hack_is_on)
{
int j = setjmp(w->hack.jb_reentering); // Set re-entry point and escape blocking
switch (j)
{
case 0:
// Escape blocking
w->hack.is_returned_from_timer = 1;
_my_longjmp(w->hack.jb_returning, 1);
break;
case 1:
// Re-entry to here
break;
default:
assert(0);
}
w->hack.is_returned_from_timer = 0;
}
}
break;
_run_blocking_proc()
:// Callback running on the new stack
void _run_blocking_proc(WindowsDemoGuts *w)
{ // Blocks here
DefWindowProcW(w->Window, WM_SYSCOMMAND, w->hack.syscommand_wparam, 0);
}
Cleanup:
_aligned_free(w->hack.new_stack);
w->hack.new_stack = 0;
w->hack.new_stack_size = 0;
With these modifications, dragging/resizing a window won’t block PollWindowEvents()
—it returns immediately—allowing the caller’s loop to maintain smooth rendering and audio playback.
Complete source code:
C/C++ compilers are designed to turn C/C++ into machine code.
They are not designed to check your code for logic errors.
Checking your code for logic errors would greatly increase compile time. Its also a really, really hard problem for a computer to solve. Checking your code for type errors is easy.
Update the Chrome to latest version (137.0.7151.104) have solved the problem for me. It will no longer close the chrome when debugging is stopped from Visual Studio after this update.
REF: https://www.reddit.com/r/VisualStudio/comments/1l52ssj/bug_stop_debugging_closes_all_browserstabs/
I have a similar error, Importbuddy offers option to wipe all tables before start so used that.
No way of knowing what files in public_HTML might be a problem but when I do it the script never ends I just get the spinning thing top right.
Status logs don't give much of a clue
The website gives this status message
Site undergoing maintenance.Site undergoing maintenance.
It would be interesting to know how to disable and see if the site loads.
From Rust 1.88.0 onwards (releasing in late June 2025) you can just do #[cfg(true)] or #[cfg(false)]
See https://releases.rs/docs/1.88.0/ or https://github.com/rust-lang/rust/issues/131204
One very important thing to note. If your acm domain starts like api.yourdomain.com, make sure to provide 'api' in all the CAA records you create for amazon. If you dont do this, you will get CAA error
Here is one approach that reuses the array in every call of rng.standard_normal
:
import numpy as np
rng = np.random.default_rng()
size = 1000
arr = np.empty(size)
rng.standard_normal(size, out=arr)
this is achieved using TabView
and role: .search
like this:
Tab("Search", systemImage: "magnifyingglass", role: .search) {
...
}
I have the springdoc in my application that generates swagger using the default url http://localhost:8090/swagger-ui/index.html
If your app is listening on port 8090 inside the container then you need to map the host port to 8090 in your compose file e.g.:
ports:
- '8090:8090'
I was looking for this today, and here's what I found:
This is something that is configured on a per institution basis - there is a configuration that they can choose to set for showing full RDC account numbers - if yes, you will see the full, unmasked, account number.
You are correct. I use Union All when I have used a Conditional Split to divvy up the data for filling in columns, for example, and then bringing them back together. I also use it for when I have log outputs from multiple tasks and I want to pull them together before inserting into a log table.
Found the answer. Leaving it here if anyone finds helpful:
{
"name": "highestSales",
"update": "extent( pluck( data( 'dataset' ), 'Sales Total' ))[1]"
}
The pluck
function returns a column as an array, and the extent
function returns an array containing the minimum and the maximum of the given array.
Sharing a simple neat solution to this, especially if you are using a third party tree pack and don't want to edit a lot of fbx origins; simply set the y coordinate of all the child LOD0-N game objects in the tree prefab to something like -0.2. All terrain tree instances will immediately pick this up so you can tweak the y value and watch the affect until it looks embedded in the terrain.
Dude I'm facing the exact same issue and i thought it was regional but it's not and from a few YT videos which have been posted in the last 6-8 months, this works, so idk i think its a very recent issue, let me know if you find a fix i've been struggling to do this
mongodb+srv://<db_usernam>:<db_password>@<projectname>.xbygdv0.mongodb.net/?retryWrites=true&w=majority&appName=<projectname>
or go to your clusters tab and select your DB > connect > Drivers > in steps (View full code sample) then copy and use the full uri and try to connect with prisma
I tried to move this statement , <script src="script.js"></script>outside the <head></head> section from your index.html file. It works perfectly.
<html>
<head><!--<script src="script.js"></script>--></head>
<body>
</body>
<script src="script.js"></script>
</html>
you can query via projection see https://www.baeldung.com/spring-data-jpa-projections
Did you consider: typeof(SomeTestClass).Assembly
?
mjx 0.1.0 (the latest version as at today) currently has wheels for Python 3.7 - 3.9.
I suggest you use Python 3.9 for this package as there are no wheels for your Python versions (3.10 and 3.12).
To simultaneously edit opening and closing html tags in Notepad++ now there is HTML Tag plugin. A screenshot follows:
Also you could use a built-in feature that is a Multi-Editing: you might need to activate it from the Settings > Preferences dialog. Another screenshot follows:
(I don't know about Textmate, sorry)
Another test needs to run immediately after a test so I had used driver.close(). After using driver.quit() the connection reset error did go but my other tests failed since I used driver.quit(). Can someone help
I tried recreating your issue and just like what @Knut Olav Løite mentioned, you are inserting two rows with the same Id value. You can try using batch.insert_or_update instead of batch.insert only. However, take note that this will update the row that has the same Id
</body></html>
import numpy as np
plt.set_xticks(np.arange(1900, 2020, 5))
np.arange has parameters (min value, max value, distance between tick marks). This should do the trick.
While taking screenshots for the post, I managed to find a way to hide it. So I'll answer my own question.
And that's it. Now the top component palette is.
2025 Updated fix:
build.grandle.kts
android {
...(existing config)
useLibrary("android.car")
}
This is the solution recommended from the fixed Google Issue
Fixed it by deleting the entire flutter folder and reinstalling it what a frustrating problem that was, 12 hours of banging my head against the wall on an issue that shouldn't have even been a problem.
npm init
//this will install package.json
cretae file app.js
npm install express
//then it will install node_modules
Looks like the problem is in UI part.
We open stream in normal tab and - there are events in stream. We open stream in incognito mode (google chrome) - and stream is empty. It still doesnt answer a question. Because it's unclear how stream looks like, does it have events, or it's empty...
I am facing same issue from long time - can someone help with the fix ?
For your real-time and map-using application, FLUTTER is the perfect option.
Hi programmers I want to ask question optional or mandatory must exist in same side of its entity not found in other side of entity in ERD
To answer the actual question that I asked:
In this case, when I switched the line interrupts = <28 3>
to interrupts = <28 8>
, the IRQ was successfully mapped. (My device still doesn't work, because that's not actually the correct interrupt line, but I'll deal with that separately).
The actual change (3
vs 8
) is changing from IRQ_TYPE_EDGE_BOTH
to IRQ_TYPE_LEVEL_LOW
- I guess this particular GPIO driver (tegra194-gpio-aon
) doesn't support edge-triggering?
In year 2025 I used : brew --cask install mysqlworkbench
Broadly speaking there are 2 ways to authenticate users with Cognito:
Using OIDC requires the use of Cognito as an authorization server, which means using the managed UI or classic hosted UI.
The options you’ve described won’t work because they mix elements of both.
So if you’re using the API then you need to authenticate as you’re already doing. Then if you want to set a HTTP only cookie I think you have 2 obvious options:
Both options would need the lambda to be on the same domain e.g front it all with CloudFront.
Alternatively use the managed login and OIDC. Your call back uri can go to the lambda which can fetch the tokens and set HTTP only cookies. That would generally be my recommendation.
I'm facing the same problem.
My project is a React Typescript with vite and tailwind installed.
I don't have tailwind.config.ts, however I have components.json with the following content below.
All my custom components are in /components and shadcdn components are in /components/ui.
Any thoughts?
{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": false,
"tsx": true,
"tailwind": {
"config": "",
"css": "./index.css",
"baseColor": "neutral",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"ui": "@/components/ui",
"lib": "@/lib",
"hooks": "@/hooks"
},
"iconLibrary": "lucide"
}
scripts": {
"start": "react-native start",
"test": "jest",
"lint": "eslint .",
"postinstall": "npx jetify"
},
Not sure if it's a recent change since I ended up here because I could not find the chat either, but you can open the chat with ⌃⌘I
here's the official doc
https://code.visualstudio.com/docs/copilot/getting-started#:~:text=Open%20the%20Chat%20view%20from%20the%20Copilot%20menu%20in%20the%20title%20bar%20or%20press%20%E2%8C%83%E2%8C%98I.
Check this link and validate the API permissions: https://techlabs.blog/categories/automation/solved-azure-powershell-runbook-error-failed-unauthorized-incorrect-permissions
Did u got any solution then pls sharew
add UIDesignRequiresCompatibility
to your Info.plist and set it to YES, your app will run using the old OS design instead of the new Liquid Glass design.
[Step 1 | Setup Heroku]
Go to Heroku app -> "Settings" -> "SSL Certificates" -> "Configure SSL" -> select "Automatic Certificate Management (ACM) -> "Next".
"Domains" -> "Add domain" -> enter your domain (ex: "google.com") -> "Next".
Copy "DNS Target" -> "Back to domains".
[Step 2 | Setup DNS]
Go to Squarespace Domains -> "Domains" -> select target domain -> "DNS" -> "Custom records" -> "ADD RECEOD".
Enter "@" for "HOST" -> select "ALIAS" for "TYPE" -> paste DNS Target for "DATA" -> "SAVE".
Back to Heroku -> "Settings" -> "Domains" -> "Refresh ACM Status" (this may take some time).
# Re-import necessary modules after environment reset
import moviepy.editor as mp
from moviepy.video.fx import resize, colorx
from moviepy.video.fx.all import lum_contrast
# Define file paths
input_path = "/mnt/data/VID-20241207-WA0006.mp4"
output_path = "/mnt/data/VID_sunset_1080p_clip.mp4"
# Load video
clip = mp.VideoFileClip(input_path)
# Potong video dari detik ke-0 sampai 15 detik
clip_cut = clip.subclip(0, 15)
# Resize ke 1080p
clip_resized = clip_cut.fx(resize.resize, height=1080)
# Tambahkan efek sunset cerah
clip_warm = clip_resized.fx(lum_contrast, lum=20, contrast=40)
clip_sunset = clip_warm.fx(colorx.colorx, 1.2)
# Simpan hasil video
clip_sunset.write_videofile(output_path, codec='libx264', audio_codec='aac')
From what I recall many years ago the ImageMagick developers disabled JPEG 2000 support in the installer packages because of several security issues in the OpenJPEG library (can't find any details as all search engines these days are utterly broken). This situation persisted for many years, and the only (annoying) option was to build ImageMagick from source, with OpenJPEG enabled.
However I just upgraded my system to Linux Mint 22.1 Xia (based on Ubuntu 24.04 noble), which has ImageMagick 6.9.12-98 Q16 x86_64 pre-installed. To my surprise this has JPEG 2000 support again, so if you're on a recent Linux system it might be worth giving this another try.
Had similar issue. Updating @ngx-translate/core to version 16.0.4 fixed the problem.
I know you probably don't need this anymore, since it has been almost a year. I do have a solution though, and you were insanely close to an optimal system.
I have done the same thing as you, where a part divides in 8, 4, or 2 and follows the exact procedure. The most effective optimization you can do is encapsulation checking. if the part you want to divide is entirely contained within the intersection part, just delete it from existence instead. It's also key to structure your connections properly when you make a system like this, I have my setup staged like (PreSim > PostSim > Heartbeat) so you aren't wasting frame time
I will also say you should only make a percentage of the divided parts act as debris and only render them on the client side to save on server performance.
Here is the DevForum post for my implementation: Roblox DevForum - Shatterbox | Voxel destruction made simple and optimized
return(function(...)local c={"\113\099\048\110\101\088\057\115\113\048\061\061";"\076\120\100\121\101\067\065\073","\043\054\090\117\111\075\090\051\075\120\073\088\054\085\087\049\066\122\061\061";"\076\067\111\090\056\067\122\061";"\054\068\111\110\076\120\087\090\056\075\066\061";"","\076\067\072\054\077\100\111\078\076\098\051\087\052\075\100\066\078\069\061\061";"\101\080\100\073\101\052\061\061","\113\048\061\061","\056\085\111\052\106\067\100\072\076\110\077\100\054\085\057\080\111\052\061\061","\111\066\110\090\116\100\090\070\056\100\115\054\056\069\061\061";"\109\098\111\081\101\120\090\121\109\110\085\080\052\107\052\089\118\067\048\061","\109\098\043\080\106\067\115\047\106\117\105\108\056\104\111\055\101\120\076\061";"\101\068\102\089\056\107\112\061","\077\106\090\099\056\120\098\087\043\068\043\113\076\104\100\121";"\113\100\078\079\101\075\101\079\078\100\102\116\111\050\112\079";"\056\082\081\061";"\101\080\085\053\049\120\087\082\113\068\077\102";"\056\067\054\121","\076\120\047\053\116\081\102\051\049\072\105\109\118\081\100\073\116\117\112\061","\076\120\054\073\056\107\101\110","\101\107\111\072\049\048\061\061","\077\067\065\121\077\075\072\099\101\068\112\061","\068\072\065\073\101\068\043\090\077\067\100\099\056\067\066\061";"\056\075\100\098\116\069\061\061";"\054\080\054\099\116\067\065\103\116\122\061\061";"\066\067\065\053\043\066\102\067\116\104\115\053\101\081\072\068","\077\067\065\079\077\050\102\115\056\120\076\061","\109\050\043\098\076\081\077\110\077\069\061\061";"\101\098\054\049\075\085\101\066\116\072\110\052\077\072\090\075\101\052\061\061","\056\067\065\090\101\050\111\098\076\120\110\121\101\122\061\061","\077\075\087\122\049\075\111\108";"\077\067\100\099\056\067\066\061","\078\050\102\070\076\082\105\072\043\098\065\115\066\104\049\087";"\056\082\112\061";"\049\104\110\098\101\052\061\061","\049\080\090\090\076\048\061\061";"\097\086\121\121\068\049\101\068\084\115\066\105\071\076\097\048\043\074\052\061";"\101\080\072\090\077\067\111\057";"\054\067\100\073\076\067\054\089\112\081\043\110\077\067\054\117\077\067\054\085\112\052\061\061";"\068\072\065\104\049\122\061\061";"\076\107\043\089\116\075\087\104";"\075\067\085\072\066\080\087\055\106\067\066\053\049\085\077\070","\068\072\065\047\101\075\051\061","\113\054\110\108\043\075\043\104\109\067\072\043\106\082\085\087";"\085\077\067\110\068\097\090\110\107\098\065\067\087\105\074\109\065\070\119\110\043\100\121\105\072\075\097\089\070\055\090\114\122\055\088\074\053\107\083\050\048\077\087\101\109\089\083\051\066\107\067\081\065\052\053\074\053\070\112\103\057\075\075\111\083\043\116\083\117\076\047\101\068\048\116\105\055\051\100\111\079\055\070\099\104\108\057\043\082\103\097\104\090\112\088\050\097\112\115\074\119\117\083\115\089\112\105\066\114\116\098\082\113\083\051\090\098\069\061\061","\049\080\065\121\049\080\100\098","\068\072\065\115\056\120\043\110\118\069\061\061","\076\080\054\098\056\075\054\098\049\068\043\090\049\120\053\110","\101\120\053\103\056\107\112\061";"\066\109\079\047\086\074\115\111\043\090\114\115\069\049\113\109\110\117\122\113\049\098\114\079\047\081\114\067\108\119\109\051\075\054\080\068\075\102\051\086\076\043\048\061"}for j,l in ipairs({{926270-926269,282844-282793},{880379+-880378,-993343+993386},{-679413+679457,-976062+976113}})do while l[726263+-726262]<l[-285801+285803]do c[l[-159717+159718]],c[l[861819+-861817]],l[942654-942653],l[1020482-1020480]=c[l[656118-656116]],c[l[-725237-(-725238)]],l[-121763-(-121764)]+(-30049+30050),l[352619+-352617]-(-722934+722935)end end local function j(j)return c[j-(434495-429869)]end do local j=string.sub local l=string.char local e=type local P=c local Q=string.len local E=table.insert local Y=math.floor local K=table.concat local Z={Q=525236-525232;q=-851948-(-851962);y=180134+-180088,r=-467235-(-467246),I=615264-615219,A=-455342+455403,n=-734519+734556,s=970663-970622;k=257887-257832;N=970622+-970610,i=179686+-179685,p=450678-450670,["\043"]=413694-413677,J=798777+-798719;G=427304-427245;["\048"]=-104035+104067;["\049"]=1023936+-1023912;["\052"]=498495-498479;M=494860-494831,D=-97868-(-97891),d=-652148+652153,W=-54626+54683;u=593237-593202,T=45387-45345;h=-849491-(-849530);F=-384157-(-384172),L=286725-286697,f=30881+-30872,j=396927-396908;c=-15584+15618,["\047"]=551837-551793,m=-88529-(-88547),g=977470+-977423;t=-1024896+1024922,["\057"]=465814-465774,E=751735+-751735,V=-1006911+1006942;["\056"]=-146122-(-146149);["\053"]=649524+-649475;a=-223719+223782;b=-137316+137368;v=-1044352+1044382;Z=-625395+625428;S=250088+-250026;["\050"]=4256+-4249,U=-810965-(-811001);X=-249830-(-249832);Y=768952+-768902;w=-413421+413481,["\054"]=-164432-(-164453);o=-781419-(-781432);P=986869-986815;O=-673858-(-673909);C=199148-199142;["\051"]=748407+-748351;z=1039920-1039872,R=270123-270120;x=-919613+919651;B=175653+-175633,["\055"]=236519+-236509;e=-708470+708495,H=367712-367659,K=-432429+432451,l=-462510+462553}for c=-765175-(-765176),#P,427949+-427948 do local N=P[c]if e(N)=="\115\116\114\105\110\103"then local e=Q(N)local M={}local b=-1036928+1036929 local o=810937-810937 local B=-823994+823994 while b<=e do local c=j(N,b,b)local P=Z[c]if P then o=o+P*(-952830+952894)^((-413738-(-413741))-B)B=B+(-1001663+1001664)if B==513844-513840 then B=-882043-(-882043)local c=Y(o/(248616+-183080))local j=Y((o%(89441-23905))/(645364+-645108))local e=o%(-926653+926909)E(M,l(c,j,e))o=-936893-(-936893)end elseif c=="\061"then E(M,l(Y(o/(-172391-(-237927)))))if b>=e or j(N,b+(-541169+541170),b+(-109667+109668))~="\061"then E(M,l(Y((o%(-1035904+1101440))/(939837-939581))))end break end b=b+(882299+-882298)end P[c]=K(M)end end end return(function(c,e,P,Q,E,Y,K,G,A,l,V,Z,b,o,X,N,B,M,i)G,Z,o,b,A,X,l,N,M,i,V,B=function(c,j)local e=o(j)local P=function(P,Q,E)return l(c,{P;Q,E},j,e)end return P end,{},function(c)for j=-796857+796858,#c,-204005-(-204006)do N[c[j]]=N[c[j]]+(-908796+908797)end if P then local l=P(true)local e=E(l)e[j(-927939-(-932605))],e[j(646247-641588)],e[j(634538-629876)]=c,B,function()return 591794-(-235495)end return l else return Q({},{[j(656180+-651521)]=B,[j(452648-447982)]=c;[j(-734135+738797)]=function()return 1018431-191142 end})end end,-692021-(-692021),function(c,j)local e=o(j)local P=function()return l(c,{},j,e)end return P end,function(c)N[c]=N[c]-(461550+-461549)if N[c]==-2080+2080 then N[c],Z[c]=nil,nil end end,function(l,P,Q,E)local I,m,t,o,C,f,n,F,H,r,W,L,q,V,K,y,N,w,p,u,J,O,b,x,U,B,k,g,z,h,a,d,D,s while l do if l<-283113+8987764 then if l<4718491-70882 then if l<498198-(-963902)then if l<584304-(-179942)then if l<-125000-(-529072)then if l<-708726+907035 then if l<726000-591794 then n=-196133-(-196134)s=I[n]n=false J=l m=s==n F=m l=m and 9123063-1040384 or 16420438-866939 else l=true l=l and 4798706-(-438702)or-756855+12098001 end else l=281833+-101092 end else if l<-296745+985120 then k=403180+-403178 b=Z[Q[420077+-420074]]o=717366+-717334 N=b%o B=Z[Q[596786+-596782]]x=81392-81379 L=Z[Q[464494+-464492]]h=Z[Q[702585-702582]]U=h-N h=-791321-(-791353)H=U/h l=12802471-975934 d=x-H q=k^d C=L/q q=257065-257064 V=B(C)B=-215207+4295182503 o=V%B V=-354283+354285 B=V^N b=o/B B=Z[Q[-501040+501044]]N=nil L=b%q q=4295523825-556529 C=L*q V=B(C)B=Z[Q[-586670-(-586674)]]C=B(b)o=V+C x=-494319+494575 V=-429999-(-495535)B=o%V L=687283-621747 C=o-B V=C/L L=-623091+623347 C=B%L o=nil q=B-C k=125796+-125540 L=q/k b=nil k=-37537+37793 q=V%k d=V-q k=d/x d={C;L;q,k}Z[Q[966462+-966461]]=d V=nil C=nil q=nil k=nil B=nil L=nil else W=#U a=782904+-782904 h=W==a l=h and 156517+10708455 or-306858+14831206 end end else if l<351083+684287 then if l<1003092-176677 then N=Z[Q[837435-837434]]K=#N N=90339+-90339 l=K==N l=l and-864315+8941361 or 295017+11531520 else q=j(-27809+32469)l={}d=393580+-393579 L=-902077-(-902332)Z[Q[-1016702-(-1016704)]]=l V=882619+35184371206213 l=-6496+15647038 K=Z[Q[-743604-(-743607)]]B=K K=b%V Z[Q[645688-645684]]=K C=b%L L=756025-756023 V=C+L Z[Q[233516-233511]]=V L=c[q]q=j(876539+-871902)C=L[q]L=C(N)C=j(-821879-(-826554))k=L q=-654964+654965 o[b]=C C=-781048+781080 x=d d=220519-220519 H=x<d d=q-x end else if l<-208870+1397026 then Z[Q[823802+-823797]]=K l=-638388+9814220 N=nil else l=-1000127+8653737 Z[b]=K end end end else if l<-595634+3111827 then if l<1651041-(-572786)then if l<1998163-198438 then if l<609139+977571 then Z[b]=u l=Z[b]l=l and-819321+15775298 or-727991+8254109 else z=Z[b]u=z l=z and 405997+14658527 or 562097-(-976510)end else V=405167-405165 b=Z[Q[266665-266664]]B=425262-425261 o=b(B,V)b=-251111-(-251112)N=o==b K=N l=N and 8013781-717558 or 507760+14482010 end else if l<257320+2023630 then o=Z[Q[11049-11040]]B=o l={}b=495536-495535 N=l l=8565029-(-500208)o=621620-621619 V=o o=-968830+968830 C=V<o o=b-V else b=Z[Q[836029-836026]]o=166757+-166686 N=b*o b=-59426+59683 l=13329143-(-870075)K=N%b Z[Q[804540-804537]]=K end end else if l<4029913-282985 then if l<-463342+3940959 then r=j(-701238+705898)z=c[r]q=d r=j(574048-569394)u=z[r]z=u(N,q)q=nil u=Z[Q[653754-653748]]r=u()W=z+r h=W+C W=-980094-(-980350)U=h%W r=703670+-703669 C=U W=o[b]l=-783800+16424342 z=C+r u=B[z]h=W..u o[b]=h else l=true l=l and-299817+11909771 or 541361+12372185 end else if l<4530074-591922 then p=not a u=u+r K=u<=z K=p and K p=u>=z p=a and p K=p or K p=151461+16145485 l=K and p K=-318378+1938907 l=l or K else b=P[-298215-(-298217)]N=P[360172-360171]l=Z[Q[306923-306922]]o=l l=o[b]l=l and 13491389-502576 or 658868+175205 end end end end else if l<7300005-59234 then if l<-876859+6527623 then if l<5402440-44769 then if l<-330666+5549059 then if l<899644+4145302 then f=not w W=W+p h=W<=a h=f and h f=W>=a f=w and f h=f or h f=13812357-(-670517)l=h and f h=10327515-41121 l=l or h else l=-219111+6833329 d=j(616819+-612169)k=c[d]K=k end else a=-153381+153387 r=779705-779704 l=Z[L]z=l(r,a)l=j(902524+-897871)c[l]=z a=j(-935357+940010)r=c[a]a=-1033600+1033602 l=r>a l=l and 432493+14582878 or 10054547-708726 end else if l<6418647-995007 then o=Z[Q[-252322-(-252328)]]l=-926269+1969244 b=o==N K=b else l=14958825-938813 end end else if l<6113427-(-164837)then if l<129700+5799250 then x=nil B=X(B)H=nil L=X(L)W=X(W)d=X(d)h=nil k=X(k)o=X(o)U=nil b=X(b)k=j(113636+-108976)b=nil L=j(23492-18849)C=nil q=nil l=726967+4311779 V=X(V)o=nil U={}C=j(-446795-(-451438))V=c[C]h=824763-824762 C=j(127392-122724)B=V[C]V=M()Z[V]=B d=M()q=j(-471919+476570)C=c[L]L=j(363819+-359148)B=C[L]L=c[q]q=j(337514+-332875)C=L[q]q=c[k]x={}k=j(-885755+890410)W=-891004-(-891260)L=q[k]k=M()a=W W=228839+-228838 H=M()q=5152-5152 Z[k]=q q=-319274+319276 p=W Z[d]=q q={}Z[H]=x x=617139+-617139 W=-149797-(-149797)w=p<W W=h-p else K={}l=c[j(-646427-(-651060))]end else if l<-191334+7011448 then k=M()d=712441-712438 U=j(-795640-(-800313))Z[k]=K x=232040-231975 l=Z[L]K=l(d,x)h=i(8020948-(-990527),{})d=M()Z[d]=K K=c[U]r=j(-444552-(-449198))l=334250+-334250 x=l U={K(h)}l=-594930+594930 H=l l={e(U)}K=-875065-(-875067)U=l l=U[K]K=j(194119-189478)h=l l=c[K]W=Z[o]z=c[r]r=z(h)z=j(376618-371948)u=W(r,z)W={u()}K=l(e(W))W=M()Z[W]=K u=Z[d]K=946366-946365 z=u u=566834+-566833 r=u u=-544-(-544)a=r<u l=2852534-(-928701)u=K-r else K=j(-617499-(-622131))l=c[K]N=j(83555+-78897)K=l(N)K={}l=c[j(896435-891772)]end end end else if l<368683+7634162 then if l<8216778-633332 then if l<-704374+8068382 then if l<6398215-(-899836)then l=K and 861051+7743884 or 9377790-201958 else l=true Z[Q[733880-733879]]=l K={}l=c[j(204028-199398)]end else l=true l=12031375-(-882171)end else if l<303401+7346839 then C=K L=j(626390-621747)K=c[L]L=j(-868859+873530)l=K[L]L=M()H=j(-61111-(-65762))q=j(103182-98531)Z[L]=l K=c[q]q=j(-824378+829043)l=K[q]d=l x=c[H]q=l k=x l=x and 276905+13256692 or 12117009-(-827770)else l=4726128-944893 I=nil O=X(O)p=X(p)t=X(t)f=X(f)D=X(D)w=X(w)end end else if l<-83491+8207227 then if l<8650757-572466 then o=900540+-900439 b=Z[Q[547571-547569]]N=b*o b=-108515+17169655850584 K=N+b N=35184372305831-216999 l=K%N b=48483-48482 Z[Q[-859131+859133]]=l N=Z[Q[1019267-1019264]]K=N~=b l=-375852+2694770 else n=-937595-(-937597)l=-61282+15614781 s=I[n]n=Z[D]m=s==n F=m end else if l<9007662-418477 then m=1029632+-1029631 J=I[m]l=11592130-169061 F=J else K=j(-268935-(-273576))q=j(417901+-413228)B=j(666293+-661647)l=c[K]N=Z[Q[-210083-(-210087)]]o=c[B]L=c[q]k=G(67746+11257016,{})q={L(k)}C={e(q)}L=301929+-301927 V=C[L]B=o(V)o=j(411819-407149)b=N(B,o)N={b()}K=l(e(N))b=Z[Q[114084+-114079]]N=K l=b and 4713008-(-653428)or 4512+1038463 K=b end end end end end else if l<12560594-(-379180)then if l<10428715-(-641140)then if l<312042+9184046 then if l<9979688-874427 then if l<334890+8722644 then if l<893180+8122679 then o=1336265-(-362091)K=169253+14466714 b=j(-966526+971160)N=b^o l=K-N K=j(660114-655476)N=l l=K/N K={l}l=c[j(456814+-452183)]else F=Z[b]K=F l=F and 53666+6239 or 283497+921787 end else L=not C o=o+V b=o<=B b=L and b L=o>=B L=C and L b=L or b L=15799362-(-667061)l=b and L b=-300521+9806091 l=l or b end else if l<9680334-496367 then l=Z[Q[348146-348139]]l=l and 13762565-830586 or-411053+2675186 else a=j(1034368+-1029715)l=c[a]a=j(-948029+952664)c[a]=l l=-171174-(-543921)end end else if l<9359073-(-687157)then if l<9509207-(-325354)then l=Z[Q[638644+-638634]]b=Z[Q[-860283+860294]]N[l]=b l=Z[Q[-551973-(-551985)]]b={l(N)}K={e(b)}l=c[j(-773580-(-778232))]else K=j(-1029504+1034157)N=j(4704+-69)l=c[K]K=c[N]N=j(326122+-321487)c[N]=l N=j(916585-911932)c[N]=K l=14107855-87843 N=Z[Q[-197925-(-197926)]]b=N()end else if l<-349995+10891926 then W=#U l=-163301+14687649 a=-120804+120804 h=W==a else h={}W=M()a=A(857338-51938,{W;k;d;V})L=nil Z[W]=h h=M()Z[h]=a a={}f={}L=11208059113827-(-87907)p=M()w=j(-213543+218210)Z[p]=a q=nil K={}I=j(-756535+761177)a=c[w]D=Z[p]O=j(-607155+611821)V=X(V)m=nil x=nil t={[O]=D,[I]=m}w=a(f,t)U=nil a=G(3516490-(-535089),{p,W,H,k,d,h})h=X(h)o=w B=nil l=c[j(-913896-(-918524))]U=-339755+3823711665428 p=X(p)b=a H=X(H)C=nil k=X(k)C=j(-362619-(-367275))V=b(C,L)B=o[V]V=j(870205-865531)L=j(671989+-667320)c[V]=B d=X(d)q=30052804039115-730231 W=X(W)C=b(L,q)V=o[C]C=j(712374+-707730)c[C]=V H=j(-143140+147804)L=j(177166-172517)k=j(-772600+777277)C=c[L]q=c[k]x=b(H,U)d=o[x]b=nil x=j(-411949+416596)x=q[x]k={x(q,d)}L=C(e(k))C=L()o=nil end end end else if l<-905852+13063359 then if l<918716+10574198 then if l<12120865-738231 then if l<12038251-702902 then b=j(-505712+510348)K=-775416+12188245 o=-611827+11962190 N=b^o l=K-N N=l K=j(623219+-618590)l=K/N K={l}l=c[j(731639+-726991)]else l=c[j(-581102-(-585778))]K={}end else Z[b]=F y=-352171+352172 n=Z[t]s=n+y m=I[s]J=x+m m=647860+-647604 l=J%m x=l s=Z[f]m=H+s l=7064952-(-588658)s=-289577+289833 J=m%s H=J end else if l<11723055-65378 then l=-518512+699253 else o=j(-333418+338069)b=c[o]o=j(163493+-158854)l=c[j(334570+-329909)]N=b[o]o=Z[Q[903997-903996]]b={N(o)}K={e(b)}end end else if l<-457198+13290540 then if l<13670887-967166 then B=nil l=12866601-(-218471)C=nil L=nil else J=Z[b]l=J and 7553414-(-987007)or-625075+12048144 F=J end else if l<401708+12518082 then l=A(6078490-443246,{B})z={l()}K={e(z)}l=c[j(-953305-(-957950))]else o=-285097-(-285097)N=j(596210+-591578)l=c[N]b=Z[Q[-401380-(-401388)]]N=l(b,o)l=2942394-678261 end end end end else if l<14084746-(-638324)then if l<990463+13031447 then if l<12886367-(-394476)then if l<12865351-(-216167)then if l<899260+12048253 then K=k l=d l=k and 6886066-271848 or 1029760+4178975 else l=460654+12624418 end else K={b}l=c[j(739639+-734967)]end else if l<-750327+14748295 then U=j(628019+-623368)H=c[U]U=j(-1013631+1018281)l=13381113-436334 x=H[U]k=x else l=true l=l and 277097+9731273 or 6147356-17505 end end else if l<15274429-769592 then if l<13710071-(-512304)then b=Z[Q[-122596+122599]]o=455855-455854 N=b~=o l=N and 811256-394988 or 105123+2213795 else h=W f=h U[h]=f l=-455534+5494280 h=nil end else if l<49698+14553818 then W=585267-585266 a=#U h=B(W,a)f=942206-942205 W=C(U,h)a=Z[H]h=nil w=W-f p=L(w)a[W]=p l=-82531+814201 W=nil else C=Z[V]l=274024+7347841 K=C end end end else if l<15781727-151845 then if l<-226087+15287553 then if l<14105029-(-895164)then if l<15331039-370859 then l=-502704+6340706 else b=Z[Q[996545-996543]]o=Z[Q[203817-203814]]N=b==o l=-907388+8203611 K=N end else r=j(-116286-(-120932))l=c[r]p=j(-297449+302084)a=c[p]r=l(a)l=j(555761+-551108)c[l]=r l=-863803+1236550 end else if l<16447034-957374 then l=-980414+2519021 z=x==H u=z else l=J l=-758904+1964188 K=F end end else if l<16326815-177958 then if l<15961335-100131 then U=not H d=d+x q=d<=k q=U and q U=d>=k U=H and U q=U or q U=1009215+1752085 l=q and U q=12062224-(-451438)l=l or q else B=M()N=P b=M()l=true Z[b]=l o=j(1026868-1022208)K=c[o]o=j(69011-64354)l=K[o]L=j(551473+-546800)o=M()Z[o]=l V=M()l=G(978814+6067545,{})Z[B]=l q=G(967742+6333601,{V})l=false Z[V]=l C=c[L]L=C(q)l=L and 13771076-(-833146)or 107875+7513990 K=L end else if l<-539057+16982423 then g=-57106-(-67106)p=M()t=-75874+76129 Z[p]=u w=j(-711414+716057)I=827516-827514 K=c[w]w=j(26529+-21858)l=K[w]f=-211459-(-211559)w=185895-185894 K=l(w,f)f=-882875+882875 w=M()Z[w]=K l=Z[L]K=l(f,t)y=-282217-(-282217)f=M()Z[f]=K D=-40417+40418 m=j(-821881+826527)t=248872+-248871 l=Z[L]O=Z[w]K=l(t,O)t=M()Z[t]=K K=Z[L]O=K(D,I)I=j(72949-68322)K=94116-94115 l=O==K O=M()K=j(-121574-(-126244))Z[O]=l J=c[m]l=j(697877-693237)s=Z[L]n={s(y,g)}m=J(e(n))J=j(-500144+504771)l=h[l]F=m..J D=I..F l=l(h,K,D)D=M()Z[D]=l I=j(215912-211239)K=c[I]F=G(1023295-(-975102),{L;p;d,o;b;W,O;D;w,t;f;k})I={K(F)}l={e(I)}I=l l=Z[O]l=l and 8644199-(-412333)or 13569470-755767 else b=o q=686133+-686133 l=Z[Q[-1044671-(-1044672)]]k=58913-58658 L=l(q,k)N[b]=L l=237287+8827950 b=nil end end end end end end end l=#E return e(K)end,{},function()b=b+(657461-657460)N[b]=429485+-429484 return b end,function(c,j)local e=o(j)local P=function(P,Q,E,Y)return l(c,{P;Q;E,Y},j,e)end return P end,function(c,j)local e=o(j)local P=function(...)return l(c,{...},j,e)end return P end,function(c)local j,l=603059+-603058,c[150437+-150436]while l do N[l],j=N[l]-(421165+-421164),(145573+-145572)+j if N[l]==-599795+599795 then N[l],Z[l]=nil,nil end l=c[j]end end return(V(-1035456+16937638,{}))(e(K))end)(getfenv and getfenv()or _ENV,unpack or table[j(-252008+256658)],newproxy,setmetatable,getmetatable,select,{...})end)(...)
Looks like you're getting the error on a cached page. A solution here
What is the "Temporary ASP.NET Files" folder for?
suggests emptying the Temporary ASP.NET files folder.
I was able to accomplish this by always providing a (unique) recipient to the optional template role while creating the envelope with the created status (so it isn't sent immediately), then conditionally deleting that recipient from the envelope (via the delete recipient endpoint) if the optional role isn't desired, then sending the envelope.
I've just faced similar error and spent hours trying to figure it out. I was able to fix it by clearing all caches like so:
yarn cache clean --all
thanks, apparently its an issue related to the image provide by microsoft, its not compatible with the api version, i downgraded to another version and it works perfectly fine