made modules external classes