close #59 booyah
close #98, close #76, close #
close #76, close #98, close #21