metadata and compiling