prealloc vector with most features implemented
compiles clean with warnings