obj C modernized