Consider an ADT called SquareMatrix. (The matrix can berepresented by a two-dimensional array of integers with n rowsand n columns.)A) write the specification for the ADT as a Java interface.Include the following operations (parameters are already listed forthe first two operations; for the remaining operations you mustdetermine which parameters to use yourself as part of theexercise); MakeEmpty (n) which sets the first n rows and columnsto zero. StoreValue (i j value) which stores value into theposition at row i column j. Add which adds two matrices together. Subtract which subtracts one matrix fromanother. Copy which copies one matrix from another.B) create a Java class that implements the interface. Assumea maximum size of 50 rows and columns (may be less)C) Create a small application that uses the class.