def is_left(self) -> 'amino.Boolean': return boolean.Boolean(isinstance(self, Left))
def left_contains(self, a: A) -> 'boolean.Boolean': return boolean.Boolean(self.is_left and self.__left_value == a)
def is_right(self) -> 'amino.Boolean': return boolean.Boolean(isinstance(self, Right))
def is_just(self) -> boolean.Boolean: return boolean.Boolean(isinstance(self, Just))
def is_empty(self) -> 'boolean.Boolean': return boolean.Boolean(self.length == 0)
def contains(self, value: A) -> 'boolean.Boolean': return boolean.Boolean(value in self)
def forall(self, f: Callable[[A], bool]) -> 'boolean.Boolean': return boolean.Boolean(all(f(el) for el in self))