This block looks quite inelegant.