removed additional illustrations, simplified interface and removed all allocatable declaration