all into two functional