     (is (= 2 (count (filter #(= (:type %) "Program") (:discard (get-runner))))) "2 programs in Heap")
     (is (= 6 (:credit (get-runner))) "Paid 1 credit to play Inject, gained 2 credits from trashed programs")))
 
+(deftest lawyer-up
+  "Lawyer Up - Lose 2 tags and draw 3 cards"
+  (do-game
+    (new-game (default-corp)
+              (default-runner [(qty "Lawyer Up" 1) (qty "Sure Gamble" 3)]))
+    (take-credits state :corp)
+    (core/move state :runner (find-card "Sure Gamble" (:hand (get-runner))) :deck)
+    (core/move state :runner (find-card "Sure Gamble" (:hand (get-runner))) :deck)
+    (core/move state :runner (find-card "Sure Gamble" (:hand (get-runner))) :deck)
+    (core/gain state :runner :tag 3)
+    (play-from-hand state :runner "Lawyer Up")
+    (is (= 3 (count (:hand (get-runner)))) "Drew 3 cards")
+    (is (= 2 (:click (get-runner))) "Spent 2 clicks")
+    (is (= 1 (:tag (get-runner))) "Lost 2 tags")))
+
+(deftest modded
+  "Modded - Install a program or piece of hardware at a 3 credit discount"
+  (do-game
+    (new-game (default-corp)
+              (default-runner [(qty "Modded" 2) (qty "HQ Interface" 1) (qty "Nerve Agent" 1) (qty "Earthrise Hotel" 1)]))
+    (take-credits state :corp)
+    (play-from-hand state :runner "Modded")
+    (prompt-select :runner (find-card "Earthrise Hotel" (:hand (get-runner))))
+    (is (empty? (get-in @state [:runner :rig :resource])) "Can't install resources with Modded")
+    (prompt-select :runner (find-card "HQ Interface" (:hand (get-runner))))
+    (is (= 1 (count (get-in @state [:runner :rig :hardware]))) "Installed HQ Interface")
+    (is (= 4 (:credit (get-runner))) "Paid 1 credit instead of 4")
+    (play-from-hand state :runner "Modded")
+    (prompt-select :runner (find-card "Nerve Agent" (:hand (get-runner))))
+    (is (= 1 (count (get-in @state [:runner :rig :program]))) "Installed Nerve Agent")
+    (is (= 4 (:credit (get-runner))) "Paid 0 credits")))
+
 (deftest notoriety
   "Notoriety - Run all 3 central servers successfully and play to gain 1 agenda point"
   (do-game

      (prompt-select :runner gd)
      (is (= 3 (get-in (refresh gd) [:counter]))))))

(deftest virus-counter-flag-on-enter
  "Set counter flag when virus card enters play with counters"
  (do-game

    (is (= 0 (:tag (get-runner)))) ; no new tags
    (is (= 5 (:credit (get-runner)))) ; no change in credits
    (is (= 8 (:credit (get-corp))))))

(deftest amped-up
  "Amped Up - Gain 3 clicks and take 1 unpreventable brain damage"
  (do-game
    (new-game (default-corp)
              (default-runner [(qty "Amped Up" 1) (qty "Feedback Filter" 1) (qty "Sure Gamble" 3)]))
    (take-credits state :corp)
    (play-from-hand state :runner "Feedback Filter")
    (play-from-hand state :runner "Amped Up")
    (is (empty? (:prompt (get-runner))) "Feedback Filter brain damage prevention opportunity not given")
    (is (= 5 (:click (get-runner))))
    (is (= 2 (count (:discard (get-runner)))))
    (is (= 4 (:max-hand-size (get-runner))))
    (is (= 1 (:brain-damage (get-runner))) "Took 1 brain damage")))

(deftest apocalypse-turn-facedown
  "Apocalypse - Turn Runner cards facedown without firing their leave play effects"
