added smart constructors for future version (only for backward compatibility)