random semi useful stuff