fashionable-white-meadowlark

SPEXN2X0M0CJ55K8GAJZEEH3A0JP64ZE7XD9XMKY

Source Code

;; NOT A PRODUCTION DEPLOYMENT
;; This contract should be used for test purposes only

(define-constant ERR-MINIMUM-OUTPUT (err u1000))

(define-public (route-a (input uint) (min-output uint))
  (let (
    (a (unwrap-panic (bitflow-a input)))
    (b (unwrap-panic (alex-a a)))
  )
    (begin
      (asserts! (>= input min-output) ERR-MINIMUM-OUTPUT)
      (ok (list input a b min-output))
    )
  )
)

(define-public (bitflow-a (input uint))
  (let (
    (call (try! (contract-call?
          'SPQC38PW542EQJ5M11CR25P7BS1CA6QT4TBXGB3M.stableswap-abtc-xbtc-v-1-1 swap-x-for-y
          'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-abtc
          'SP3DX3H4FEYZJZ586MFBS25ZW3HZDMEW92260R2PR.Wrapped-Bitcoin
          'SPQC38PW542EQJ5M11CR25P7BS1CA6QT4TBXGB3M.abtc-xbtc-lp-token-v-1-1
          input u0)))
  )
    (ok call)
  )
)

(define-public (alex-a (input uint))
  (let (
    (call (try! (contract-call?
          'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.amm-swap-pool-v1-1 swap-helper
          'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-wbtc
          'SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-wstx
          u100000000 input (some u0))))
  )
    (ok call)
  )
)

Functions (3)

FunctionAccessArgs
route-apublicinput: uint, min-output: uint
bitflow-apublicinput: uint
alex-apublicinput: uint