change from float to double for true interactions