added more optimizations
does tags but has issues with saving them