added different types (will eventually be useful)