works before demo