modernified a bit