 	  a = [42, "foo"]
 	  a = a.use()
 
-	  console.log a[0]
 	  eq a[0], 42, "array get abides by contract"
 	  throws (-> a[0] = "foo"), "array set violates contract"
 


  badRng :: (Str) -> Num
  badRng = (x) -> x

  throws (-> badRng "foo"), "violates range"



  noarg_bad :: -> Num
  noarg_bad = -> "foo"
  noarg_bad = noarg_bad.use()

  throws (-> noarg_bad()), "violates contract"

