removed unused requires and created extensions