A code manipulation tool to implement adaptable systems