modified requirements, add missing things