(define-map staked-amounts principal uint)
(define-data-var total-staked uint u0)
(define-data-var min-stake uint u1000000)
(define-read-only (get-staked (user principal)) (default-to u0 (map-get? staked-amounts user)))
(define-read-only (get-total-staked) (var-get total-staked))
(define-public (stake (amount uint))
(begin
(asserts! (>= amount (var-get min-stake)) (err u1))
(map-set staked-amounts tx-sender (+ (get-staked tx-sender) amount))
(var-set total-staked (+ (var-get total-staked) amount))
(ok true)))