work around scalac bug by removing `extends AnyVal`
work around scalac bug by giving explicit type parameter to Observable constructor