self cum compilation

.