now using simplified initializer
updated version