note bug to fix later; todo