external declarations