@synchronized is replaced by GCD dispatch_once, coz it is way more cleaner, awesome and recommended by apple.