Source Code

(impl-trait .extension-trait.extension-trait)
(define-constant err-unauthorised (err u1000))
(define-public (migrate)
	(let (
			(sender tx-sender)
			(abtc-bal (unwrap-panic (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-abtc get-balance-fixed sender)))
			(susdt-bal (unwrap-panic (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-susdt get-balance-fixed sender)))
			(slunr-bal (unwrap-panic (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-slunr get-balance-fixed sender)))
			(ssko-bal (unwrap-panic (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-ssko get-balance-fixed sender)))
		)
		(and (> abtc-bal u0)
			(begin
				(as-contract (try! (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-abtc burn-fixed abtc-bal sender)))
				(as-contract (try! (contract-call? .token-abtc mint-fixed abtc-bal sender)))))
		(and (> susdt-bal u0)
			(begin
				(as-contract (try! (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-susdt burn-fixed susdt-bal sender)))
				(as-contract (try! (contract-call? .token-susdt mint-fixed susdt-bal sender)))))
		(and (> slunr-bal u0)
			(begin
				(as-contract (try! (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-slunr burn-fixed slunr-bal sender)))
				(as-contract (try! (contract-call? .token-slunr mint-fixed slunr-bal sender)))))
		(and (> ssko-bal u0)
			(begin
				(as-contract (try! (contract-call? 'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-ssko burn-fixed ssko-bal sender)))
				(as-contract (try! (contract-call? .token-ssko mint-fixed ssko-bal sender)))))
		(ok true)))
(define-public (callback (sender principal) (payload (buff 2048)))
	(ok true))

Functions (2)

FunctionAccessArgs
migratepublic
callbackpublicsender: principal, payload: (buff 2048