extending protocols to nil and more FIXO