Dapp invocation fee error

photo_2021-05-02_05-12-46

Hi
I’m new to smart account so I assume this is an easy problem so if you could help me with it, I appreciate it so much

I wrote my script as the attached image to swap wave to neutrino USDN.
I implemented my seed and dapp address.
When i run my script ,I get this error:
“State check failed. Reason: Transaction sent from smart account. Requires 400000 extra fee… Fee for InvokeScriptTransaction (500000 in WAVES) does not exceed minimal value of 900000 WAVES.”
I read some articles that announced to change the default fee for transaction in smart account, we have to paste our own script in the dapp.
So i have 3 questions:

1.Is this right that we must change the script of the account?if it is, where should i do that and how?

2.if my script is wrong,can you help me with that?

3.Is it possible to use dapp address of the smart account for sender account, Is there any difference between Smart account and not smart account?

Note:seem adding fee in script doesn’t change the situation because the problem with base json script is in the smart account. I have also tried some other ways,
Such as copying the json from Invoke Transaction from Dapp Ui to Json in field in Waves.exchange and changed the Json fee there to 0.009 and I got this error : “Error while executing account-script: DApp self-transfer is forbidden since V4”

And then I Invoke the Transaction by a non-smart account and I got this error,
" Error while executing account-script: Fee in WAVES for InvokeScriptTransaction (500000 in WAVES) with 0 total scripts invoked does not exceed minimal value of 100500000 WAVES."