use kew for promises, fibrous is too much overhead here