fork download
  1. $><<"Username: ";u=gets.chop
  2. $><<"Password: ";gets
  3. puts ('^.{8,12}$+\p{Lower}+\p{Upper}+^(\p{Alpha}.*){2}+\d+(\p{Lower}.*){9}+(\p{Upper}.*){9}+(.)\1.*(.)\2+(.).*\1.*\1+[ ^=&#,;"<>\[|)]+'+u+?++u.reverse).split(?+).map{|r|/#{r}/=~$_??A:?B}*""=="AAAAABBBBBBB"?"OK.":"Nope."
  4.  
Success #stdin #stdout 0s 4716KB
stdin
JOE.smith
JOE!smith123
stdout
Username: Password: Nope.