Initial BMP implementation